解题思路:1.输入字符串;2.统计26个字母出现的次数并存放到数组num中;3.使用sort函数排序;4.查找第一个num中不为0的数字num[i];5.m=num[25]-num[i]就是所求maxn-minn;6.判断m是否是素数即可。
参考代码:
#include <bits/stdc++.h> using namespace std; const int N=105; int prime(int n) { int k=sqrt(n); if(n<2) return 0; for(int i=2;i<=k;i++) if(n%i==0) return 0; return 1; } int main() { char a[N]; int num[26]={0}; int i; memset(num,0,sizeof(num)); scanf("%s",a); for(i=0;a[i];i++) { num[a[i]-'a']++; } sort(num,num+26); for(i=0;i<26;i++) if(num[i]!=0) break; int m=num[25]-num[i]; if(prime(m)) { cout<<"Lucky Word"<<endl; cout<<m; } else { cout<<"No Answer"<<endl; cout<<0; } return 0; }
0.0分
4 人评分
蛇行矩阵 (C语言代码)浏览:753 |
【偶数求和】 (C语言代码)浏览:646 |
简单的for循环浏览:1412 |
蛇行矩阵 (C语言代码)浏览:536 |
1157题解浏览:718 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:812 |
母牛的故事 (C语言代码)浏览:945 |
1050题解(结构体数组与结构体指针的使用)浏览:1111 |
川哥的吩咐 (C语言代码)浏览:611 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:2166 |