[백준] 10950번 : A+B - 3 - [C++]
- 문제
- 알고리즘 [접근 방법]
이전 문제를 풀고 오셨거나 for문에 대해 사용 방법을 알고 있다면 그리 어렵지 않은 문제다.
혹여 for문에 대해 잘 모른다면 아래 글에서 알고리즘 부분을 참고하시길 바란다. 기초적인 사용 방법에 대해 설명하고 있다.
여러분들이 앞으로 백준 문제를 풀다보면 가장 전형적으로 접할 수 있는 문제다.
무슨 말인가 하면, 테스트 케이스(T)를 입력받고 각 테스트 케이스에 대해 문제를 푼 뒤 해당 결과들을 출력하는 문제를 의미한다.
위 문제에서는 어떤 문제를 요구하는지 한 번 보자.
"두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오."
즉, 두 수의 덧셈을 하는 문제다. 이는 이전 출력 문제에서 풀어보셨을 것이다. 풀어보지 않았더라도 매우 쉽게 짤 수 있다. 대충 의사코드로 작성해보면 아래와 같을 것이다.
main() {
A = input();
B = input();
print(A + B);
}
위 알고리즘을 우리는 T, 즉 테스트 케이스만큼 반복을 해야 한다는 것이다.
main() {
T = input(); // T : Test Case
for (i = 0; i < T; i++) {
A = input();
B = input();
print(A + B);
}
}
쉽게 말해 기본적인 알고리즘 골자를 구성한 뒤, 해당 내용을 for문 안으로 넣어버리면 쉽게 해결 할 수 있는 문제다. 또는 for문 안의 내용이 너무 많을 경우는 구현부분을 따로 함수로 만들어서 함수를 호출하는 방법으로 작성해도 좋다.
그럼 한 번 풀이 코드를 보도록 하자.
- 1가지 방법을 사용하여 풀이한다.
이 번 문제는 딱히 달리 풀이할 것이 없기에 한 가지 방법으로 풀이하겠다.
1. 알고리즘1
- 풀이
- 방법 1
#include <iostream>
using namespace std;
int main(int argc, char const *argv[]) {
int T, A, B;
cin >> T; // 테스트 케이스
// 테스트 케이스만큼 반복
for (int i = 0; i < T; i++) {
cin >> A >> B;
cout << A + B << "\n";
}
return 0;
}
가장 기본적인 방법이라 할 수 있겠다.
앞서 알고리즘 설명 부분에도 말했듯이 가장 기본 틀을 구성한 뒤 for문 안에 넣으면 된다.
- 성능
채점 번호 : 27562219 - 방법 1
- 정리
이 번 문제 또한 어려운 점은 없었을 것이다. 다만 앞으로 만날 빠른 A+B에서는 다뤄야 할 것이 좀 많기 때문에 일단 이 문제에서는 간단한 설명으로 마쳤다.
'C++ - 백준 [BAEK JOON] > 반복문' 카테고리의 다른 글
[백준] 11022번 : A+B - 8 - [C++] (0) | 2021.05.02 |
---|---|
[백준] 11021번 : A+B - 7 - [C++] (0) | 2021.04.26 |
[백준] 15552번 : 빠른 A+B - [C++] (6) | 2021.03.28 |
[백준] 8393번 : 합 - [C++] (0) | 2021.03.26 |
[백준] 2739번 : 구구단 - [C++] (0) | 2021.03.19 |