[백준] 10951번 - A+B - 4 [Java][C++]
[백준] 10951번 - A+B - 4 [Java][C++]
1. 문제 풀이
여러 개의 테스트 케이스에 대해 반복적으로 합을 구해야 하는데 테스트 케이스의 개수가 주어져 있지는 않다. 더 이상 받을 입력이 없는 EOF에 대해 고려하여 해결해야 한다.
2. 코드
1. 구현 [Java]
Java의 경우 더 이상 받을 입력이 없으면 BufferedReader 의 readLine 메서드가 null 을 반환함을 활용했다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
StringTokenizer st;
String line;
while ((line = br.readLine()) != null) {
st = new StringTokenizer(line);
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
sb.append(A + B).append("\n");
}
System.out.println(sb);
}
}
2. 구현 [C++]
C++의 경우 cin 을 통한 입력에서 반환되는 istream 객체가 EOF에 도달하면 false 로 평가됨을 활용했다.
1
2
3
4
5
6
7
8
9
10
11
12
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int a, b;
while (cin >> a >> b) {
cout << a + b << '\n';
}
}
3. 풀이 정보
1. 구현 [Java]
| 언어 | 시간 | 메모리 | 코드 길이 |
|---|---|---|---|
| Java 11 | 100 ms | 14200 KB | 599 B |
2. 구현 [C++]
| 언어 | 시간 | 메모리 | 코드 길이 |
|---|---|---|---|
| C++ 17 | 0 ms | 2020 KB | 197 B |
This post is licensed under CC BY 4.0 by the author.