夢追い人

"It takes a dreamer to make a dream come true."―Vincent Willem van Gogh

プログラミングコンテストの標準入力

こんにちは。

今日は新しいアプリを開発してプログラミング楽しんでたわけですが・・・


標準入力ってどうやればいいんだ?

みたいな感じでJOIの過去問とかTopCoder以外のプロコンに手を出していなかったのですがまぁ解決したので(笑)




とりあえずココはpythonから。

たとえばpythonから
1 2
3 4
みたいなものを標準入力でするとき便利なのは…

a, b = map(int, raw_input().split())
c, d = map(int. raw_input().split())

でaに1、bに2…のように代入できます。
参考サイト

さて、お次はJavaです。
とりあえず普通の上みたいなことをやろうとすると…
import java.util.Scanner;

class Sample {
public static void main(String[] args) {
Scanner stdIn = new Scanner(System.in);
int a = stdIn.nextInt();
}
}
と、まぁ入門書上がりの愚直な人は考えて(←俺w)ネットを放浪することになりますが、これはどっちかっていうとBufferedReader使ったほうが参考サイトも多くていいわけですね(笑)
import java.io.*;

class Sample {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split(" ");
}
}
また、こっちはファイル入出力にしてみたときに・・・はやい(コチラ
import java.io.*;

class Sample {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader(args[0]);
BufferedWriter bw = new BufferedWriter(new FileWriter(args[1]);
String[] str = br.readLine().split(" ");
for (int i = 0;i < str.length; i++) bw.write(str[i]);
bw.close();
br.close();
}
}
こうすると第一引数のテキストファイルからよみだして第二引数のテキストファイルにコピーするといったことができます。 これ応用すれば楽にプロコンいけますよね(笑) 多分実際に提出するときは・・・どっちがいいのかな? おまけでcを
scanf("%d %d", &a ,&b);
簡単ですね(笑)