package _0380; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashSet; import java.util.Set; public class Main { public static void main(String[] args) throws IOException { Set letters = new HashSet<>(); for (char ch = 'a'; ch <= 'z'; ch++) letters.add(ch); for (char ch = 'A'; ch <= 'Z'; ch++) letters.add(ch); for (char ch = '0'; ch <= '9'; ch++) letters.add(ch); BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in)); String line; while ((line = stdin.readLine()) != null) { String ans = isOK(line, letters) ? "CORRECT (maybe)" : "WRONG!"; System.out.println(ans); } } public static boolean isOK(String line, Set letters) { // 1行を最大2つに分割。分割できない場合は異常。 String[] tokens = line.split(" ", 2); if (tokens.length != 2) { return false; } // 2つに分解した行のうち、セリフ部分について、記号を取り除く。 String who = tokens[0]; String rawSpeech = tokens[1]; StringBuilder sb = new StringBuilder(); for (char c : rawSpeech.toCharArray()) { if (letters.contains(c)) { sb.append(Character.toLowerCase(c)); } } String speech = sb.toString(); // digiの全てのセリフはnyoか,nyoの末尾に記号を1~3文字つけたもので終わる // petitの全てのセリフはnyuか,nyuの末尾に記号を1~3文字つけたもので終わる // gemaの全てのセリフはgemaか,gemaの末尾に記号を1~3文字つけたもので終わる // piyoの全てのセリフはpyoか,pyoの末尾に記号を1~3文字つけたもので終わる if (who.equals("digi")) return speech.endsWith("nyo"); if (who.equals("petit")) return speech.endsWith("nyu"); if (who.equals("gema")) return speech.endsWith("gema"); if (who.equals("piyo")) return speech.endsWith("pyo"); // rabiの全てのセリフは記号でない文字を少なくても1文字含む // 変数speechは記号文字はすべて削除されている。 if (who.equals("rabi")) return !speech.isEmpty(); // だれともマッチしなかった。 return false; } }