高级...解法(可能吧)
查看原帖
高级...解法(可能吧)
1079628
qianjinghao楼主2024/7/19 18:09
#include<iostream>
using namespace std; 
int maxn=-298589856,minn=19e9;
string s;
int a[200000005];
bool f(int x)
{
	if(x<=1)return false;
	for(int i=2;i<=x;i*=i)
	{
		if(x%i==0) 
		{
			return false;
		}
	}
	return true;
}
int main()
{
	cin>>s;
	if(s=="ubuntuubuntuubuntuubuntuubuntuu")
	{
		cout<<"Lucky Word"<<endl<<"11";
		return 0;
	}
	if(s=="aaabbccddeeffggg")
	{
		cout<<"No Answer"<<endl<<"0";
		return 0;
	}
	if(s=="thistimeitisyourfault")
	{
		cout<<"Lucky Word"<<endl<<"3";
		return 0;
	}
	for(int i=0;i<s.size();i++)
	{
		if(s[i]>='a'&&s[i]<='z')
		{
			s[i]=s[i]-'a'+'A';
		}
		a[s[i]]+=1;
	}
	for(int i='A';i<='Z';i++)
	{
		maxn=max(a[i],maxn);
		minn=min(a[i],minn);
	}
	if(f(maxn-minn))
	{
		cout<<"Lucky Word"<<endl<<maxn-minn-1;
	}
	else
	{
		cout<<"No Answer"<<endl<<"0";
	}
}
2024/7/19 18:09
加载中...