AIZU ONLINE JUDGE
id=10033
たまたまTwitterで問題が流れていたので投稿。
C言語が出題で、提出もC言語だったんだけど、せっかくなのでJavaでも組んでみる。
しかしこれ、ランタイムエラーなんだよな・・・。
BufferedReader r = new BufferedReader(new InputStreamReader(System.in), 1);
とかやってみたけどこういう意味じゃないみたいだし。。。
せめてRuntime Errorの理由を教えてくれないかなぁ・・・まぁ分かるまで保留だなぁ。。。
→理由分かった。パッケージ名を一緒に送ったらダメだったみたい。はぁーひでぇ理由だ。
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Scanner;
public class Main {
public static void main
(String[] args
) {
ArrayList<String> result = analysis();
for (int index = 0, size = result.size(); index < size; index++) {
String elem
= result.
get(index
); }
}
private static ArrayList<String> analysis() {
Scanner scn
= new Scanner
(System.
in); ArrayList<String> result = new ArrayList<String>();
HashMap
<Integer, LinkedList
<String
>> area
= new HashMap
<Integer, LinkedList
<String
>>();
while (!(L01 = scn.next()).equals("quit")) {
int index
= Integer.
parseInt(scn.
next()); if ("push".equals(L01)) {
add(index, scn.next(), area);
} else if ("pop".equals(L01)) {
result.add(pop(index, area));
} else if ("move".equals(L01)) {
String data
= pop
(index, area
); int to
= Integer.
parseInt(scn.
next()); add(to, data, area);
}
}
return result;
}
private static void add
(int index,
String data, HashMap
<Integer, LinkedList
<String
>> area
) { LinkedList<String> list = area.get(index);
if (list == null) {
list = new LinkedList<String>();
area.put(index, list);
}
list.add(data);
}
private static String pop
(int index, HashMap
<Integer, LinkedList
<String
>> area
) { return area.get(index).removeLast();
}
}
最終更新:2012年02月16日 01:06