字符串处理思想:
用下标处理,若存在则pd数组++
没啦
C++:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<map>
#include<algorithm>
#include<set>
#include<queue>
#define INF 0x3f3f3f3f
#define inf 0x3f
#define ll long long
using namespace std;
char c[101],len;
int a[101];
int px[256],maxn,minn;
bool pd(int sum){
if(sum==0) return 0;
if(sum==1) return 0;
for(int i=2;i<=sqrt(sum);i++){
if(sum%i==0) {
return 0;
}
}
return 1;
}
int main(){
cin>>c;
len=strlen(c);
for(int i=0;i<len;i++){
px[c[i]]++;
}
maxn=px[c[0]]; minn=px[c[0]];
for(int i=1;i<=len-1;i++){
if(maxn<px[c[i]]){
maxn=px[c[i]];
}
if(minn>px[c[i]]){
minn=px[c[i]];
}
}
if(pd(maxn-minn)){
cout<<"Lucky Word"<<endl;
cout<<maxn-minn;
}
else {
cout<<"No Answer"<<endl<<"0";
}
return 0;
}
原文:https://www.cnblogs.com/kenlig/p/9461104.html