poj 1028 - Web Navigation
2011/08/21
2011/08/21
java
pku
poj
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);
}
}
: