poj 1028 - Web Navigation 2011/08/21
2011/08/21

1028 -- Web Navigation Javaにはデフォルトでstackがあるから楽。 といっても、いまどきのプログラミング言語にはついてるのだろうけど。 まったくむずかしいことはなく素直に、問題文を指示通りにコードにするだけ。

package p1028; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; public class Main { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader( System.in)); String line; Stack forwardStack = new Stack(); Stack backwardStack = new Stack(); String currentPage = "http://www.acm.org/"; while ((line = reader.readLine()) != null) { String[] ss = line.split(" "); if ("BACK".equals(ss[0])) { if (backwardStack.isEmpty()) { p(null); continue; } forwardStack.push(currentPage); currentPage = backwardStack.pop(); } else if ("FORWARD".equals(ss[0])) { if (forwardStack.isEmpty()) { p(null); continue; } backwardStack.push(currentPage); currentPage = forwardStack.pop(); } else if ("VISIT".equals(ss[0])) { backwardStack.push(currentPage); forwardStack.removeAllElements(); currentPage = ss[1]; } else if ("QUIT".equals(ss[0])) { break; } p(currentPage); } } static void p(String s) { System.out.println(s == null ? "Ignored" : s); } }

: