P1125 笨小猴

题目如下:

 

 

 思路:

1.建立一个数组存储26个字母出现的次数

  注意数组大小!!!

  小写的a-z ascll码为 97-122

  大写的A-Z ascll 码为 65-90

  所以数组的大小最好>=122

2.注意1和0不是素数

a['b'] 不要以字母的角度看待

要以ascll码看待带单引号的字母

代码如下:

#include<cstdio> 
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main(){
    int maxn,minn=100,flag=1;
    string s;
    cin>>s;
    int ans[1000];
    memset(ans,0,sizeof(ans));
    for(int i=0;i<s.size();i++)     
    ans[s[i]]++;
    for(int i='a';i<='z';i++)
    { if(ans[i]>0&&ans[i]<minn)
        minn=ans[i];
    }
//    cout<<minn<<endl;
    maxn=*max_element(ans,ans+1000);
//    cout<<maxn<<endl;
    int c=maxn-minn;
    if(c==1||c==0){
    cout<<"No Answer"<<endl;
    cout<<"0"<<endl;
    }
    else {
    for(int i=2;i<c;i++)
    if(c%i==0){
    cout<<"No Answer"<<endl;
    cout<<"0"<<endl;
    flag=0;
    break;
    }
    if(flag)
    cout<<"Lucky Word"<<endl<<c<<endl;
    }
}

 

 

posted @ 2020-04-30 10:42  miao-xixixi  阅读(203)  评论(0编辑  收藏  举报