笨小熊

描述

笨小熊的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 
这种方法的具体描述如下:假设maxn是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果maxn-minn是一个质数,那么笨小熊就认为这是个Lucky Word,这样的单词很可能就是正确的答案。

 
输入
第一行数据N(0<N<100)表示测试数据组数。
每组测试数据输入只有一行,是一个单词,其中只可能出现小写字母,并且长度小于100。
输出
每组测试数据输出共两行,第一行是一个字符串,假设输入的的单词是Lucky Word,那么输出“Lucky Word”,否则输出“No Answer”; 
第二行是一个整数,如果输入单词是Lucky Word,输出maxn-minn的值,否则输出0
样例输入
2
error
olympic
样例输出
Lucky Word
2
No Answer
0

 1 import java.util.Arrays;
 2 import java.util.Scanner;
 3 
 4 public class Main {
 5     public static void main(String[] args) {
 6         Scanner scanner=new Scanner(System.in);
 7         int T;
 8         int i;
 9         int j;
10         char word[]=new char[101];
11         int count[]=new int[26];
12         int min=0;
13         int max=0;
14         String result;
15         int flag;
16         
17         T=scanner.nextInt();
18         for(i=0;i<T;i++){
19             word=scanner.next().toCharArray();
20             
21             for(j=0;j<26;j++)
22                 count[j]=0;
23             
24             for(j=0;j<word.length;j++){
25                 count[word[j]-'a']++;
26             }
27         
28             for(j=0;j<26;j++){
29                 if(count[j]!=0){
30                     min=count[j];
31                     max=count[j];
32                     break;    
33                 }
34             }
35             
36             for(j=0;j<26;j++){
37                 if(count[j]!=0){
38                     if(count[j]<min)
39                         min=count[j];
40                     
41                     if(count[j]>max)
42                         max=count[j];
43                 }
44             }
45             
46             if(max-min<2){
47                 System.out.println("No Answer\n0");
48                 continue;
49             }
50             
51             flag=0;
52             for(j=2;j*j<=max-min;j++){
53                 if((max-min)%j==0){
54                     flag=1;
55                     break;
56                 }
57             }
58             
59             if(flag==0)
60                 System.out.println("Lucky Word\n"+(max-min));
61             
62             else
63                 System.out.println("No Answer\n0");    
64         }    
65     }    
66 }

 

 
posted @ 2014-11-29 13:41  zqxLonely  阅读(307)  评论(0编辑  收藏  举报