๋ฌธ์
๋ณธ๊ฒฉ์ ์ผ๋ก for๋ฌธ ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ ์ ์ฃผ์ํด์ผ ํ ์ ์ด ์๋ค. ์ ์ถ๋ ฅ ๋ฐฉ์์ด ๋๋ฆฌ๋ฉด ์ฌ๋ฌ ์ค์ ์ ๋ ฅ๋ฐ๊ฑฐ๋ ์ถ๋ ฅํ ๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ ์ ์๋ค๋ ์ ์ด๋ค.
C++์ ์ฌ์ฉํ๊ณ ์๊ณ cin/cout์ ์ฌ์ฉํ๊ณ ์ ํ๋ค๋ฉด, cin.tie(NULL)๊ณผ sync_with_stdio(false)๋ฅผ ๋ ๋ค ์ ์ฉํด ์ฃผ๊ณ , endl ๋์ ๊ฐํ๋ฌธ์(\n)๋ฅผ ์ฐ์. ๋จ, ์ด๋ ๊ฒ ํ๋ฉด ๋ ์ด์ scanf/printf/puts/getchar/putchar ๋ฑ C์ ์ ์ถ๋ ฅ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ์ ๋๋ค.
Java๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด, Scanner์ System.out.println ๋์ BufferedReader์ BufferedWriter๋ฅผ ์ฌ์ฉํ ์ ์๋ค. BufferedWriter.flush๋ ๋งจ ๋ง์ง๋ง์ ํ ๋ฒ๋ง ํ๋ฉด ๋๋ค.
Python์ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด, input ๋์ sys.stdin.readline์ ์ฌ์ฉํ ์ ์๋ค. ๋จ, ์ด๋๋ ๋งจ ๋์ ๊ฐํ๋ฌธ์๊น์ง ๊ฐ์ด ์ ๋ ฅ๋ฐ๊ธฐ ๋๋ฌธ์ ๋ฌธ์์ด์ ์ ์ฅํ๊ณ ์ถ์ ๊ฒฝ์ฐ .rstrip()์ ์ถ๊ฐ๋ก ํด ์ฃผ๋ ๊ฒ์ด ์ข๋ค.
๋ํ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ ์คํธ๋ฆผ์ ๋ณ๊ฐ์ด๋ฏ๋ก, ํ ์คํธ์ผ์ด์ค๋ฅผ ์ ๋ถ ์ ๋ ฅ๋ฐ์์ ์ ์ฅํ ๋ค ์ ๋ถ ์ถ๋ ฅํ ํ์๋ ์๋ค. ํ ์คํธ์ผ์ด์ค๋ฅผ ํ๋ ๋ฐ์ ๋ค ํ๋ ์ถ๋ ฅํด๋ ๋๋ค.
์์ธํ ์ค๋ช ๋ฐ ๋ค๋ฅธ ์ธ์ด์ ๊ฒฝ์ฐ๋ ์ด ๊ธ์ ์ค๋ช ๋์ด ์๋ค.
์ด ๋ธ๋ก๊ทธ ๊ธ์์ BOJ์ ๊ธฐํ ์ฌ๋ฌ ๊ฐ์ง ํ์ ๋ณผ ์ ์๋ค.
์ ๋ ฅ
์ฒซ ์ค์ ํ ์คํธ์ผ์ด์ค์ ๊ฐ์ T๊ฐ ์ฃผ์ด์ง๋ค. T๋ ์ต๋ 1,000,000์ด๋ค. ๋ค์ T์ค์๋ ๊ฐ๊ฐ ๋ ์ ์ A์ B๊ฐ ์ฃผ์ด์ง๋ค. A์ B๋ 1 ์ด์, 1,000 ์ดํ์ด๋ค.
์ถ๋ ฅ
๊ฐ ํ ์คํธ์ผ์ด์ค๋ง๋ค A+B๋ฅผ ํ ์ค์ ํ๋์ฉ ์์๋๋ก ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ
5
1 1
12 34
5 500
40 60
1000 1000
์์ ์ถ๋ ฅ
2
46
505
100
2000
ํ์ด
1. Scanner ํด๋์ค๋ System.out.println() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ์๊ฐ์ด๊ณผ๊ฐ ๋๋ค.
2. Scanner์ System.out.println ๋์ BufferedReader์ BufferedWriter๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ถ๋ ฅ ํ๋ค.
=> BufferedReader/BufferedWriter ํด๋์ค ์ฌ์ฉ
import java.io.*;
import java.util.StringTokenizer;
public class B15552 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int num = Integer.parseInt(br.readLine());
for(int i = 0; i < num; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int c = a+b;
bw.write(c + "\n");
}
bw.flush();
bw.close();
}
}