Submission #533086


Source Code Expand

import java.io.IOException;
import java.io.InputStream;
import java.util.NoSuchElementException;

public class Main {

    public static void main(String[] args) {
	FastScanner scanner = new FastScanner();

	int N = scanner.nextInt();
	for (int i = 0; i < N; i++) {
	    String string = scanner.next();
	    int M = string.length();
	    int[] dp = new int[M + 1];
	    for (int j = 0; j + 5 <= M; j++) {
		if (string.substring(j, j + 5).equals("tokyo")
			|| string.substring(j, j + 5).equals("kyoto")) {
		    dp[j + 5] = Math.max(dp[j + 5], dp[j] + 1);
		}
		dp[j + 1] = Math.max(dp[j + 1], dp[j]);
	    }
	    System.out.println(dp[M]);
	}

    }

    public void solve() {
	new Main().solve();
    }
}

class FastScanner {
    private final InputStream in = System.in;
    private final byte[] buffer = new byte[1024];
    private int ptr = 0;
    private int buflen = 0;

    public int nextInt() {
	return (int) nextLong();
    }

    private boolean hasNextByte() {
	if (ptr < buflen) {
	    return true;
	} else {
	    ptr = 0;
	    try {
		buflen = in.read(buffer);
	    } catch (IOException e) {
		e.printStackTrace();
	    }
	    if (buflen <= 0) {
		return false;
	    }
	}
	return true;
    }

    private int readByte() {
	if (hasNextByte())
	    return buffer[ptr++];
	else
	    return -1;
    }

    private static boolean isPrintableChar(int c) {
	return 33 <= c && c <= 126;
    }

    private void skipUnprintable() {
	while (hasNextByte() && !isPrintableChar(buffer[ptr]))
	    ptr++;
    }

    public boolean hasNext() {
	skipUnprintable();
	return hasNextByte();
    }

    public String next() {
	if (!hasNext())
	    throw new NoSuchElementException();
	StringBuilder sb = new StringBuilder();
	int b = readByte();
	while (isPrintableChar(b)) {
	    sb.appendCodePoint(b);
	    b = readByte();
	}
	return sb.toString();
    }

    public long nextLong() {
	if (!hasNext())
	    throw new NoSuchElementException();
	long n = 0;
	boolean minus = false;
	int b = readByte();
	if (b == '-') {
	    minus = true;
	    b = readByte();
	}
	if (b < '0' || '9' < b) {
	    throw new NumberFormatException();
	}
	while (true) {
	    if ('0' <= b && b <= '9') {
		n *= 10;
		n += b - '0';
	    } else if (b == -1 || !isPrintableChar(b)) {
		return minus ? -n : n;
	    } else {
		throw new NumberFormatException();
	    }
	    b = readByte();
	}
    }
}

Submission Info

Submission Time
Task A - 東京都
User kenkoooo
Language Java (OpenJDK 1.7.0)
Score 0
Code Size 2484 Byte
Status WA
Exec Time 341 ms
Memory 24988 KB

Judge Result

Set Name All
Score / Max Score 0 / 100
Status
WA × 3
Set Name Test Cases
All 10_random_to_kyo.txt, 20_noised_tokyoto.txt, 99_teuchi.txt
Case Name Status Exec Time Memory
10_random_to_kyo.txt WA 339 ms 24988 KB
20_noised_tokyoto.txt WA 341 ms 24716 KB
99_teuchi.txt WA 323 ms 23196 KB