0013-Switching Railroad Cars
実装の概要
0が入力された際に出ていくのは「現在停まっている中で最後に行き止まりに入ってきた車両」なのでスタックを使うと簡単に記述することができます。即ち、車両が行き止まりに入るということをpush()、車両が出て行くことをpop()と対応させるということです。
public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Stack<Integer> stack = new Stack<Integer>(); while(true){ String tmp = br.readLine(); if(tmp == null){ break; } int n = Integer.parseInt(tmp); if(n != 0){ stack.push(n); } if(n == 0){ System.out.println(stack.pop()); } } } }