第三题代码,不知道为啥只能过90%
public class Main {
    public static void main(String[] args) throws FileNotFoundException {
        Scanner sc = new Scanner(new BufferedReader(new FileReader("test.txt")));
//        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        String[] strs = str.split(":");
        int cmd = Integer.valueOf(strs[0]);
        if (cmd == 1) {
            String num = strs[1].split("_")[1];
            System.out.println((Integer.valueOf(num) - 1) * 50);
        } else if (cmd == 2) {
            int sum = 0;
            for (int i = 0; i < strs[1].length(); i++) {
                sum += strs[1].charAt(i);
            }
            int mod = sum % 999;
            while (mod % 50 != 0) {
                mod++;
                mod %= 1000;
            }
            System.out.println(mod);
        } else if (cmd == 3) {
            String content = strs[1];
            String redis = content.split(";")[0];
            String token = content.split(";")[1];
            HashSet<Integer> set = new HashSet<>();
            String[] redises = redis.split(",");
            for (int i = 0; i < redises.length; i++) {
                int num = Integer.valueOf(redises[i].split("_")[1]);
                set.add((num - 1) * 50);
            }
            int sum = 0;
            for (int i = 0; i < token.length(); i++) {
                sum += token.charAt(i);
            }
            int mod = sum % 999;
            while (mod % 50 != 0 || set.contains(mod)) {
                mod++;
                mod %= 1000;
            }
            System.out.println(mod);
        } else if (cmd == 4) {
            String content = strs[1];
            int num = Integer.valueOf(content.split("_")[2]);
            if (num % 2 == 1) num *= 25;
            else num = 500 + (num - 1) * 25;
            System.out.println(num);
        } else if (cmd == 5) {
            String content = strs[1];
            String redis = content.split(";")[0];
            String token = content.split(";")[1];
            HashSet<Integer> set = new HashSet<>();
            for (int i = 1; i <= Integer.valueOf(redis.split("_")[2]); i++) {
                if (i % 2 == 1) set.add(i * 25);
                else set.add(500 + (i - 1) * 25);
            }
            int sum = 0;
            for (int i = 0; i < token.length(); i++) {
                sum += token.charAt(i);
            }
            int mod = sum % 999;
            while (mod % 25 != 0 || !set.contains(mod)) {
                mod++;
                mod %= 1000;
            }
            System.out.println(mod);
        }
    }
}