問題
ソースコード
- これはソースを見てもらったほうが圧倒的に早いと思うので。
- わかりやすく再帰で解くと一瞬で終わります。
class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
char[] c = br.readLine().toCharArray();
int len = c.length;
if(len == check(c, len, 0)) {
System.out.println("Cat");
} else {
System.out.println("Rabbit");
}
}
static int check(char[] c, int len, int pointer) {
if(c[pointer] != 'm') return -1;
pointer++;
if(c[pointer] != 'e') {
pointer = check(c, len, pointer);
if(pointer == -1) return -1;
}
pointer++;
if(c[pointer] != 'w') {
pointer = check(c, len, pointer);
if(pointer == -1) return -1;
}
pointer++;
return pointer;
}
}