1.문제
테스트케이스 T를 입력받아 T만큼 A+B의 값을 출력하라.
2.입력
첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다.
3.출력
각 테스트케이스마다 A+B를 한 줄에 하나씩 순서대로 출력한다.
4.풀이
- Scanner사용(시간초과) -> 테스트케이스가 많아질수록 Scanner를 불로오는 횟수가 너무많아서 성능이 저하됨.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import java.util.Scanner;
public class Main {
public static void main(String [] args) {
Scanner sc = new Scanner(System.in);
int count = sc.nextInt();
int a = 0;
int b = 0;
int [] result = new int[count];
for(int i=0; i<count; i++) {
a = sc.nextInt();
b = sc.nextInt();
result[i] = a+b;
}
for(int i=0; i<result.length; i++) {
System.out.println(result[i]);
}
sc.close();
}
}
|
cs |
- Buffer사용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String [] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine().trim());
for(int i=0; i<n; i++) {
String input = br.readLine();
String [] word = input.split(" ");
int a = Integer.parseInt(word[0]);
int b = Integer.parseInt(word[1]);
bw.write((a+b) + "\n");
}
bw.flush();
bw.close();
br.close();
}
}
|
cs |
'알고리즘' 카테고리의 다른 글
백준(1546) - 평균(java) (0) | 2019.04.18 |
---|---|
백준(10871) - X보다 작은수(java) (0) | 2019.04.18 |
백준(11721) - 열 개씩 끊어 출력하기(java) (0) | 2019.04.18 |
백준(11720) - 숫자의 합(java) (0) | 2019.04.18 |
백준(2839) - 설탕배달하기(java) (0) | 2019.04.16 |