本文共 1634 字,大约阅读时间需要 5 分钟。
为了解决这个问题,我们需要判断给定的单词是否为“Lucky Word”,即单词中出现次数最多的字母和出现次数最少的字母出现次数的差值是否为质数。我们将通过统计各个字母的出现次数并检查差值是否为质数来实现这一点。
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); int[] counts = new int[26]; for (int i = 0; i < s.length(); i++) { counts[s.charAt(i) - 'a']++; } int max = -1, min = 99999; for (int i = 0; i < 26; i++) { if (counts[i] > max) { max = counts[i]; } if (counts[i] < min) { min = counts[i]; } } int difference = max - min; boolean isPrime = false; if (difference >= 2) { isPrime = true; for (int i = 2; i < difference; i++) { if (difference % i == 0) { isPrime = false; break; } } } if (isPrime) { System.out.println("Lucky Word"); System.out.println(difference); } else { System.out.println("No Answer"); System.out.println(0); } }}
Scanner
读取输入的单词。counts
,记录每个字母的出现次数。这个方法确保了我们能够正确判断单词是否为“Lucky Word”,并高效地处理输入和统计操作。
转载地址:http://sdtzz.baihongyu.com/