nulpatrol's blog

By nulpatrol, 10 years ago, In Russian

Попытался недавно переписать задачу с C++ на Java. Собственно задача вот. Использовал BufferedReader, вот код

public static void main(String[] args) {
	try(
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));
	) {
		int k, t, p = 0;
		k = Integer.parseInt(in.readLine());
		for (int i = 0; i < k; i++) {
			t = Integer.parseInt(in.readLine());
			p ^= g(t);
		}
		if (p != 0) out.println("Rybka"); else out.println("Watson");
	} catch(IOException e) {}
}

Получил ML, каждая строка во входной последовательности добавляет к использумой памяти примерно 160 кб. Но где там может быть утечка памяти? Посоветуйте кто может, пожалуйста, как от этого избавиться.

  • Vote: I like it
  • +8
  • Vote: I do not like it