NYOJ--62-题目--------------------------------------笨小熊
2015-03-09 20:57
267 查看
package org.acm.newhand; /*http://acm.nyist.net/JudgeOnline/problem.php?pid=62*/ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class NYOJ_62 { private static int arr[] = new int[26]; private static int prime[] = new int[101]; // 线性筛选素数 static { prime[0] = 1; prime[1] = 1; for (int i = 2; i <= 10; i++) { if (prime[i] == 0) { for (int j = i * i; j <= 100; j += i) { prime[j] = 1; } } } } public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int t = Integer.parseInt(br.readLine()); while (t-- > 0) { Arrays.fill(arr, 0); char chs[] = br.readLine().toCharArray(); // 记录每个字母出现的次数 for (int i = 0; i < chs.length; i++) arr[chs[i] - 'a']++; // 获取最多次以及最少次 int max = 1, min = 101; for (int i = 0; i < arr.length; i++) { if (arr[i] > max) max = arr[i]; if (arr[i] < min && arr[i] != 0) min = arr[i]; } // 判断是不是素数 int p = max - min; if (prime[p] == 0) { System.out.println("Lucky Word"); System.out.println(p); } else { System.out.println("No Answer"); System.out.println(0); } } } }