60分,俩判断大和小,一判断素数的函数,大佬帮忙看看哪里出问题了
查看原帖
60分,俩判断大和小,一判断素数的函数,大佬帮忙看看哪里出问题了
1170750
Beibeisheep楼主2024/5/1 20:58
#include<iostream>
 using namespace std;
 
 int maxn(string a, int len);
 int minn(string a, int len);
 bool sushu(int n);
int main(){
	string a;
	cin >> a;
	int len = a.length();
	int max = maxn(a, len);
	int min = minn(a, len);
	int r = max-min;
	if(sushu(r))
		cout << "Lucky Word" << endl;
	else
		cout << "No Answer" << endl;
	cout << r;
	return 0;
}


int maxn(string a, int len){
	char k[256] = {0};
	for(int i = 0;i<len;i++){
		k[a[i]]++;
	}
	int max = -1;
	for(int i = 0;i<256;i++){
		if(k[i]>max)
			max = k[i];
	}
	return max;	
}

int minn(string a, int len){
	char k[256] = {0};
	for(int i = 0;i<len;i++){
		k[a[i]]++;
	}
	int min = 100000;
	for(int i = 0;i<256;i++){
		if(k[i]<min&&k[i]!=0)
			min = k[i];
	}
	return min;	
}

bool sushu(int n){
	if(n<=1)
		return false;
	if(n==2||n == 3)
		return true;
	if(n%6!=1&&n%6!=5)
		return false;
	for(long long int i = 5;i*i<=n;i+=6){
		if(n%i==0||n%(i+2) == 0)
			return false;
	}
	return true;
}
2024/5/1 20:58
加载中...