猫史档案馆


c++1407——笨小猴

用户:|宸宸||宸宸|查看:11 回复:4 评论:11 创建时间:2024-07-24T21:37:08


1407:笨小猴
时间限制: 1000 ms         内存限制: 65536 KB 【题目描述】

笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!

这种方法的具体描述如下:假设𝑚𝑎𝑥𝑛是单词中出现次数最多的字母的出现次数,𝑚𝑖𝑛𝑛是单词中出现次数最少的字母的出现次数,如果𝑚𝑎𝑥𝑛−𝑚𝑖𝑛𝑛是一个质数,那么笨小猴就认为这是个𝐿𝑢𝑐𝑘𝑦 𝑊𝑜𝑟𝑑(幸运单词),这样的单词很可能就是正确的答案。

注:情景为题目描述,训练师请勿模仿。

【输入】

只有一行,是一个单词,其中只可能出现小写字母,并且长度小于100

【输出】

共两行,第一行是一个字符串,假设输入的的单词是𝐿𝑢𝑐𝑘𝑦 𝑊𝑜𝑟𝑑,那么输出“𝐿𝑢𝑐𝑘𝑦 𝑊𝑜𝑟𝑑”,否则输出“𝑁𝑜 𝐴𝑛𝑠𝑤𝑒𝑟”;

第二行是一个整数,如果输入单词是𝐿𝑢𝑐𝑘𝑦 𝑊𝑜𝑟𝑑,输出𝑚𝑎𝑥𝑛−𝑚𝑖𝑛𝑛的值,否则输出0

【输入样例】
error
【输出样例】
Lucky Word
2
【提示】

样例输入:

样例 #2:

olympic

 

样例输出:

样例 #2:

No Answer
0

______________________________________________________________________________________________________________
[代码示例]:
#include<bits/stdc++.h>
using namespace std;
bool ip(int x)
{
	if(x==1 || x==0) return false;
	for(int i=2;i<=x/i;i++)
	{
		if(x%i==0) return false;
	}
	return true;
} 
int main()
{
	string s;
	int sum=0,ma=-0xfffffff,mi=0xfffffff;
	cin>>s;
	for(int i=0;i<s.size();i++)
	{
		for(int j=0;j<s.size();j++)
		{
			if(s[i]==s[j]) sum++;
			if(j+1==s.size())
			{
				if(sum>ma) ma=sum;
				if(sum<mi && sum!=0) mi=sum;
				sum=0;
				continue;
			}
		}
	}
	if(ip(ma-mi)) cout<<"Lucky Word"<<endl<<ma-mi;
	else cout<<"No Answer"<<endl<<"0";
	return 0; 
}

有兴趣可以用python试试。


回复

上一页1 页 / 共 1下一页
MiKeRiTionMiKeRiTion

飞机大战:

#include<bits/stdc++.h> #include<conio.h> using namespace std; int px=24,onkey,zdsum=10; int s[48][18]; int stutas;   struct zdfs{ int x,y; }zd[15];   void cleanplane(){ for(int i=0;i<48;i++){ for(int j=0;j<18;j++){ s[i][j]=0; } } return ; }   void adplane(){ if(px<=1){ px++; adplane(); }else if(px>=47){ px--; adplane(); }else{ s[px][16]=1; s[px-1][17]=1; s[px][17]=1; s[px+1][17]=1; } return ; }   void zdup(){ for(int i=0;i<15;i++){ if(zd[i].y>0){ zd[i].y--; s[zd[i].x][zd[i].y]=2; } } }   void zdgo(){ for(int i=0;i<15;i++){ if(zd[i].y==0){ zd[i].x=px; zd[i].y=15; break; } } }   void display(){ system("cls"); for(int i=1;i<=50;i++){ cout<<"_"; } cout<<endl; for(int i=0;i<18;i++){ cout<<"|"; for(int j=0;j<48;j++){ if(s[j][i]==0){ cout<<" "; }else if(s[j][i]==1){ cout<<"█"; }else if(s[j][i]==2){ cout<<"."; } } cout<<"|"<<endl; } for(int i=0;i<50;i++){ cout<<"_"; } cout<<endl<<"按AD键移动,空格攻击,Esc再按任意键退出"<<endl; if(zdsum==0){ cout<<"您没有子弹了,请及时按“F”键填弹"; } if(stutas==1){ cout<<"您没有足够的子弹"; stutas=0; }else if(stutas==2){ cout<<"子弹打完才能填弹哦"; stutas=0; } return ; } void makevs(){ return ; }   int main(){ adplane(); display(); while(true){ adplane(); if(_kbhit()){ onkey=_getch(); if(onkey==97){ px--; }else if(onkey==100){ px++; }else if(onkey==27){ break; }else if(onkey==32){ if(zdsum>0){ zdgo(); zdsum--; }else{ stutas=1; } }else if(onkey==102){ if(zdsum>0){ stutas=2; }else{ zdsum=10; } }  cleanplane(); zdup(); adplane(); display(); } } system("pause"); cout<<"感谢您的游玩"<<endl<<"Thank you for playing"; return 0; }

点赞0


评论


该用户不再实名上网该用户不再实名上网

这是你自己写的吗

 

点赞0


评论


该用户不再实名上网该用户不再实名上网

你确定这是PYTHON?

不是C++?

 

点赞0


评论


|宸宸||宸宸|

center_image

效果示意图

点赞0


评论