社区讨论

80分求调!

P1125[NOIP 2008 提高组] 笨小猴参与者 3已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@m6cy0ahq
此快照首次捕获于
2025/01/26 09:30
去年
此快照最后确认于
2025/11/04 10:19
4 个月前
查看原帖
rt,用的map
C
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N=1e3+5;
map<string,ll>mp;
bool check(ll n){
	if(n==1||n==0)return 0; 
	if(n==2)return 1;
	for(ll i=2;i<=sqrt(n)+1;++i){
		if(n%i==0)return 0;
	}return 1;
}
void solve(){
	string s;cin>>s;
	ll maxn=-1;ll minn=100+5;
	if(s.size()==0||s.size()==1){
		cout<<"No Answer\n0";
		return; 
	}
	for(ll i=0;i<s.size();++i){
		string tmp=s.substr(i,1);
		mp[tmp]+=1;
		maxn=max(maxn,mp[tmp]);
		minn=min(minn,mp[tmp]);
	}
	if(check(maxn-minn))cout<<"Lucky Word\n"<<maxn-minn;
	else cout<<"No Answer\n0";
}
int main(){
	ll T=1;
	while(T--)solve();
	return 0;
}
主要函数在solve()里,check()函数是判断是否为素数的. 同时对输入字符串为空串或一个字母的情况进行了特判.
求DALAO调一下,拜谢Orz

回复

5 条回复,欢迎继续交流。

正在加载回复...