백준 10951번 (A+B - 4, C++) [BAEKJOON]
문제
https://www.acmicpc.net/problem/10951
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 256 MB | 286357 | 101857 | 85660 | 35.661% |
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
각 테스트 케이스마다 A+B를 출력한다.
예제 입력 1
plaintext
1 1
2 3
3 4
9 8
5 2
예제 출력 1
plaintext
2
5
7
17
7
알고리즘 분류
백준 10952번 문제와 90% 정도 같지만 입력에서 큰 차이가 있다.
10952번은 0 0 을 입력으로 주면서 입력의 마지막을 알려주었다면 이 문제에서는 그런 것이 없다.
이 문제를 해결하려면 EOF 에 대하여 알아야 한다.
EOF - End of File의 약자로 텍스트 파일의 끝을 알리기 위한 문자 값이다.
파일의 끝이라면 cin.eof()는 true 값을 반환한다는 것만 알고 있으면 된다.
코드를 작성할때 10952번 코드를 재활용해서 bool 값으로 pair값의 first, second를 구별하여 넣어주었다.
출처
비슷한 문제
- 1000번. A+B
- 1001번. A-B
- 1008번. A/B
- 2558번. A+B - 2
- 10950번. A+B - 3
- 10952번. A+B - 5
- 10953번. A+B - 6
- 10998번. A×B
- 11021번. A+B - 7
- 11022번. A+B - 8
- 15740번. A+B - 9
- 15792번. A/B - 2
통과된 코드
cpp
#include <iostream>
#include <list>
using namespace std;
list <pair<int, int>> tempList;
list <pair<int, int>>::iterator it;
pair<int, int> temp;
int main()
{
bool check = true;
while (!cin.eof()) {
if (check) {
cin >> temp.first;
check = !check;
}
else {
cin >> temp.second;
check = !check;
tempList.push_back(temp);
}
}
for (it = tempList.begin(); it != tempList.end(); it++)
cout << it->first + it->second << "\n";
return 0;
}