알고리즘/백준

[백준] 2724번: 기찍 N - 시간초과 / C++

히똔 2022. 5. 1. 16:38
728x90
반응형

풀이 문제 : 백준 9095번 : 1,2,3 더하기
풀이 언어 : C++
문제링크 : https://www.acmicpc.net/problem/2742 

 

2742번: 기찍 N

자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

문제 요약


문제는 겁나 쉽다. 

 

시간초과


겁나 쉬운 문제가 시간초과가 났다..
시간초과난 코드는 다음과 같다

#include <iostream>
#include <stdio.h>
using namespace std;

int main() {
	int x;
	cin >> x;
	for (int i = x; i > 0; i--) {
		cout << i << endl;
	}
}

여기서 틀린 점은..? 바로,, endl.

endl는 실행시마다 출력 버퍼를 비워줘야하기 때문에 `\n`보다 훨씬 속도가 느리다.
그래서 왠만하면 \n을 쓰는 것을 권장한다.

 

정답코드


#include <iostream>
#include <stdio.h>
using namespace std;

int main() {
	int x;
	cin >> x;
	for (int i = x; i > 0; i--) {
		cout << i << '\n';
	}
}

 

728x90
반응형