专栏文章

蒟蒻第一篇题解

P1125题解参与者 1已保存评论 0

文章操作

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

当前评论
0 条
当前快照
1 份
快照标识符
@mipogxbu
此快照首次捕获于
2025/12/03 15:20
3 个月前
此快照最后确认于
2025/12/03 15:20
3 个月前
查看原文

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

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

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

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

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

AC代码

CPP
#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;
 } 

谢谢观看

评论

0 条评论,欢迎与作者交流。

正在加载评论...