![[APS][C++] BOJ B5 2741번 N 찍기 (feat. 시간 초과)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKPPe3%2FbtsL3zHMJPn%2FQ7tigYEDkRVBaxsK6RON40%2Fimg.png)
[APS][C++] BOJ B5 2741번 N 찍기 (feat. 시간 초과)APS/BOJ2025. 1. 28. 02:18
Table of Contents
https://www.acmicpc.net/problem/2741
문제
자연수 N이 주어졌을 때, 1부터 N까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오.
입력
- 첫째 줄에 100,000보다 작거나 같은 자연수 N이 주어진다.
출력
- 첫째 줄부터 N번째 줄 까지 차례대로 출력한다.
풀이
자연수 N을 입력받고, 1부터 N까지 개행을 하며 차례대로 출력하면 해결되는 매우 간단한 문제이다.
- 변수
n
을 선언한 후,cin
을 이용하여 입력 받음 - 반복문을 통해 반복하며
cout
을 이용하여 1 ~ N 까지 출력 (개행 포함)
코드
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
cout << i << "\n";
}
return 0;
}
결과
오답 원인
endl
을 이용한 개행 >> 시간 초과 발생 >>endl
대신\n
을 사용하여 개행std::endl
의 경우 줄바꿈 명령 이후 출력 버퍼를 비우는std::flush
작업이 함께 수행되기 때문에 상대적으로 느리게 동작할 수 있다. 반면, 출력 스트림에 단순히 개행 문자를 추가하는\n
를 사용하면 I/O 작업의 빈도를 줄일 수 있어 상대적으로 빠르게 동작한다.cout << "Hello World" << std::endl;
는cout << "Hello World" << "\n" << std::flush;
와 동일한 작업을 수행
'APS > BOJ' 카테고리의 다른 글
[APS][C++] BOJ S1 2529번 부등호 (0) | 2025.03.12 |
---|---|
[APS][C++] BOJ S5 11723번 집합 (feat. 입출력 시간 초과) (0) | 2025.02.16 |
[APS][C++] BOJ S5 1676번 팩토리얼 0의 개수 (feat. 0의 개수의 비밀) (0) | 2025.02.09 |
[APS][C++] BOJ B2 1152번 단어의 개수 (feat. getline) (0) | 2025.01.30 |
[APS][C++] BOJ B5 10951번 A+B - 4 (feat. EOF) (0) | 2025.01.28 |
@청월누리 :: DevKuk 개발 블로그
since 2025.01.27. ~ 개발자를 향해....🔥