题解 | #[NOIP2008]笨小猴#
[NOIP2008]笨小猴
https://www.nowcoder.com/practice/17865bc2a75c4944a872ef709958c56e
#include <iostream>
#include <cstring>
using namespace std;
int main() {
int a[26]={0};
string c;
cin>>c;
for(int i=0;i<c.length();i++)
{
a[c[i]-'a']++;
}
int max=0,min=101;
for(int i=0;i<26;i++)
{
if(a[i]!=0 && a[i]>max)
{
max=a[i];
}
if(a[i]!=0 && a[i]<min)
{
min=a[i];
}
}
int k=max-min;
if(k==0||k==1)
{
cout<<"No Answer"<<endl;
cout<<"0"<<endl;
return 0;
}
for(int i=2;i<k;i++)
{
if(k%i==0)
{
cout<<"No Answer"<<endl;
cout<<"0"<<endl;
return 0;
}
}
cout<<"Lucky Word"<<endl;
cout<<k<<endl;
}
// for(int i=0;i<26;i++)
// {
// cout<<a[i]<<endl;
// }
// }
// 64 位输出请用 printf("%lld")
开一个数组来统计这个每个字母出现的次数
