문제 출처: www.acmicpc.net/problem/15552
1. 코드
2. 풀이
cin.tie(NULL);
메인 함수에 처음에 이것을 선언하는데 이것은 cin과 cout의 묶을 풀어주는 구문이라고 한다. cin으로 데이터를 읽을 때 출력 버퍼에 있는 내용을 비우는데 비우지 않고 먼저 입력을 받는다.
ios::sync_with_stdio(false);
이 구문은 C와 C++의 버퍼를 분리하는 역할을 한다고 한다.
int T;
cin >> T;
그다음에 테스트 케이스의 수를 입력을 한다.
for (int i = 0; i < T; i++)
{
int A, B;
cin >> A >> B;
cout << A + B << '\n';
}
그리고 반복문을 이용하여 테스트 케이스의 수만큼 A와 B를 입력받으며 A + B의 값을 출력하는데 endl 대신 '\n'을 사용한다. 그 이유는 endl은 개행 작업도 하지만 cin처럼 출력 버퍼를 비우는 작업도 한다. 그렇기에 그저 개행 작업만 하는 '\n'을 사용하여 시간을 단축시킨다.
return 0;
그리고 종료하면 끝이다.
3. 느낀 점
cin.tie(NULL);과 ios::sync_with_stdio(false);에 대해서 오늘처럼 알아서 급하게 찾아보기는 했지만 cin과 버퍼에 대해서 이해가 미숙해서 다른 글에 대한 내용을 참고를 했다. 꾸준히 공부해야겠다.
참고한 글: www.acmicpc.net/board/view/22716
'컴퓨터 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 11021번: A+B - 7 [C++] (0) | 2020.12.08 |
---|---|
백준 알고리즘 2742번: 기찍 N [C++] (0) | 2020.12.07 |
백준 알고리즘 8393번: 합 [C++][재귀] (0) | 2020.12.03 |
백준 알고리즘 10950번: A+B - 3 [C++] (0) | 2020.12.01 |
백준 알고리즘 2739번: 구구단 [C++] (0) | 2020.11.30 |