第一次发博客,用java语言求解笨小猴问题。此代码还有很多改进的地方,还希望大家多多指点。
public class Java12 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sca =new Scanner(System.in);
String a=sca.nextLine();
int m=1,d,max=1,min=1,o=0;//因为c2是从c里面查找出来的,所以开始最少和最多都为一次
char[] c=a.toCharArray();
char[] c2=new char[a.length()];
c2[0]=c[0];//将第一个字符放入查找出来的数组
//将输入的字符串去掉重复装入c2数组
for (int i=1;i<c.length;i++) {
d=0;
for(int j=0;j<m;j++){
if(c[i]==c2[j]){
d=1;
}
}
if(d!=1){
c2[m]=c[i];
m++;
}
}
//查找c2的字符在c中出现的最小次数和最多次数
for(int j=0;j<m;j++){
o=0;
for(int i=0;i<a.length();i++){
if(c2[j]==c[i]){
o++;
}
}
if(o>max){
max=o;
}
if(o<min){
min=o;
}
}
//判断输出
if(zhisu(max-min)){
System.out.println("Lucky Word");
System.out.println(max-min);
}else{
System.out.println("No Answer");
System.out.println(0);
}
}
//判断是否为素数(质素)
static boolean zhisu(int a){
for(int i=2;i<a;i++){
if(a%i==0){
return false;
}
}
return true;
}
}
本文分享了使用Java语言求解笨小猴问题的代码实现,通过去除字符串中重复字符并统计各字符出现频率,判断最大与最小频率之差是否为素数。

801

被折叠的 条评论
为什么被折叠?



