蒟蒻第一篇题解

· · 题解

蒟蒻第一篇题解,码风极烂,请见谅

主要用了三个函数(当然一个或不用也可,本人认为这样好理解)

第一步 输入字符串,并创立桶排,记录出现次数

第二步 进函数去得出maxn与minn

第三步 检测是否为质数并输出

AC代码


#include<bits/stdc++.h>
using namespace std;
int x[1000],ma,mi=114514;
int maxn(string a,int l)
{
    for(int i=0;i<l;i++)
    {
        ma=max(x[a[i]],ma);
    }
    return ma;   //检测出现最多的字母次数

}
int minn(string a,int l)
{
    for(int i=0;i<l;i++)
    {
        if(x[a[i]])
        {
        mi=min(x[a[i]],mi);
        }
    }
    return mi;    //检测出现最少的字母次数

}
bool A(int x)
{
    if(x<=1) return 0;
    if(x==2) return 1;
    for(int i=2;i*i<=x;i++)
    {
        if(x%i==0) return 0;
    }
    return 1;   //检测是否为质数
}
int main()
{
    string a;
    cin>>a;
    int l=a.size(),b;
    for(int i=0;i<l;i++)
        x[a[i]]++;    //创建一个桶,存放字母出现的次数
    b=maxn(a,l)-minn(a,l);
    if(A(b))
    {
        cout<<"Lucky Word"<<endl;
        cout<<b;
    }
    else 
    {
        cout<<"No Answer"<<endl;
        cout<<0;
    } //输出
    return 0;
 } 

谢谢观看