社区讨论

为什么我们老师不让这样???

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

讨论操作

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

当前回复
9 条
当前快照
1 份
快照标识符
@mhjih626
此快照首次捕获于
2025/11/04 03:06
4 个月前
此快照最后确认于
2025/11/04 03:06
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
string s;
pair<char,int> a[101];
bool cmp(pair<char,int> c,pair<char,int> b);
bool zhishu(int x);
int main(){
	cin>>s;
	a[1].first = 'a',a[2].first = 'b',a[3].first = 'c',a[4].first = 'd',a[5].first = 'e',
	a[6].first = 'f',a[7].first = 'g',a[8].first = 'h',a[9].first = 'i',a[10].first = 'j',
	a[11].first = 'k',a[12].first = 'l',a[13].first = 'm',a[14].first = 'n',a[15].first = 'o',
	a[16].first = 'p',a[17].first = 'q',a[18].first = 'r',a[19].first = 's',a[20].first = 't',
	a[21].first = 'u',a[22].first = 'v',a[23].first = 'w',a[24].first = 'x',a[25].first = 'y',a[26].first = 'z';
	for(int i = 0;i<s.size();i++)
		if(s[i] == 'a')a[1].second++;
		else if(s[i] == 'b')a[2].second++;
		else if(s[i] == 'c')a[3].second++;
		else if(s[i] == 'd')a[4].second++;
		else if(s[i] == 'e')a[5].second++;
		else if(s[i] == 'f')a[6].second++;
		else if(s[i] == 'g')a[7].second++;
		else if(s[i] == 'h')a[8].second++;
		else if(s[i] == 'i')a[9].second++;
		else if(s[i] == 'j')a[10].second++;
		else if(s[i] == 'k')a[11].second++;
		else if(s[i] == 'l')a[12].second++;
		else if(s[i] == 'm')a[13].second++;
		else if(s[i] == 'n')a[14].second++;
		else if(s[i] == 'o')a[15].second++;
		else if(s[i] == 'p')a[16].second++;
		else if(s[i] == 'q')a[17].second++;
		else if(s[i] == 'r')a[18].second++;
		else if(s[i] == 's')a[19].second++;
		else if(s[i] == 't')a[20].second++;
		else if(s[i] == 'u')a[21].second++;
		else if(s[i] == 'v')a[22].second++;
		else if(s[i] == 'w')a[23].second++;
		else if(s[i] == 'x')a[24].second++;
		else if(s[i] == 'y')a[25].second++;
		else if(s[i] == 'z')a[26].second++;
	sort(a+1,a+27,cmp);
	int ans = a[1].second;
	if(!a[2].second)ans-=a[1].second;
	else if(!a[3].second)ans-=a[2].second;
	else if(!a[4].second)ans-=a[3].second;
	else if(!a[5].second)ans-=a[4].second;
	else if(!a[6].second)ans-=a[5].second;
	else if(!a[7].second)ans-=a[6].second;
	else if(!a[8].second)ans-=a[7].second;
	else if(!a[9].second)ans-=a[8].second;
	else if(!a[10].second)ans-=a[9].second;
	else if(!a[11].second)ans-=a[10].second;
	else if(!a[12].second)ans-=a[11].second;
	else if(!a[13].second)ans-=a[12].second;
	else if(!a[14].second)ans-=a[13].second;
	else if(!a[15].second)ans-=a[14].second;
	else if(!a[16].second)ans-=a[15].second;
	else if(!a[17].second)ans-=a[16].second;
	else if(!a[18].second)ans-=a[17].second;
	else if(!a[19].second)ans-=a[18].second;
	else if(!a[20].second)ans-=a[19].second;
	else if(!a[21].second)ans-=a[20].second;
	else if(!a[22].second)ans-=a[21].second;
	else if(!a[23].second)ans-=a[22].second;
	else if(!a[24].second)ans-=a[23].second;
	else if(!a[25].second)ans-=a[24].second;
	else if(!a[26].second)ans-=a[25].second;
	else ans-=a[26].second;
	if(zhishu(ans))printf("Lucky Word\n%d",ans);
	else printf("No Answer\n0");
	return 0;
}
bool cmp(pair<char,int> c,pair<char,int> b){
	return c.second>b.second;
}
bool zhishu(int x){
	if(x<2)return false;
	else if(x == 2)return true;
	for(int i = 2;i*i<=x;i++)
		if(!(x%i))return false;
	return true;
}

回复

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

正在加载回复...