ICPCでのJavaの入出力
2009/06/20 05:51
最近どこへ行ってもJava派が少なくて悲しい限りです。
別にJava信者ってわけじゃないんですが、業務で使うのがそれなので・・・。
時間があればC++もやりたいけど。
ICPCなどの大会で標準出力を使ってデータを扱いたい時は、java.util.Scannerが便利です。
Scanner s = new Scanner(System.in); // 次の数値型を取得してポインタを進める int i = s.nextInt(); double d = s.nextDouble(); // 1行を取得してポインタを次の行へ進める String linie = s.nextLine(); // まだ入力があればtrueを返す。 if (s.hasNext()) ;
例。
HanafudaShuffle() throws FileNotFoundException{
InputStream in = System.in;
Scanner s = new Scanner(in);
while (true) {
int n = s.nextInt();
int r = s.nextInt();
if (n==0 && r==0) break;
List list = new LinkedList<Integer>();
for (int j = 0; j < n; j++)
list.add(n - j);
for (int i = 0; i < r; i++)
list = shuffle(list, s.nextInt() - 1, s.nextInt());
System.out.println(list.get(0));
}
}
大した機能はないんですが、この何気ないScanner#nextInt()がとても素敵だと思います。
