문제
https://www.acmicpc.net/problem/28014
풀이
#include <iostream>
using namespace std;
int count = 0;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
int n;
int n1 = 0;
int n2;
cin >> n;
for(int i = 0; i<n; i++){
cin >> n2;
if(n2>=n1){
count++;
}
n1=n2;
}
cout << count;
return 0;
}
다음 첨탑이 전 첨탑보다 작을 경우 넘어가고, 전 첨탑보다 클 경우 count를 올려 풀 수 있다.
처음에는 시간초과가 발생했지만
ios::sync_with_stdio(false);
cin.tie(NULL);
위 코드를 추가하여 해결할 수 있었다.
ios::sync_with_stdio(false) 는 'cin'과 'cout'을 'stdio'와의 동기화를 해제함으로써 입출력을 빠르게 한다.
또한 보통은 cin 작업 이후에 자동으로 cout이 버퍼를 비우는데, cin.tie(NULL)은 cin과 cout이 독립적으로 수행될 수 있게 하여 입출력 작업의 성능을 향상시킨다.
'개인공부 > 알고리즘' 카테고리의 다른 글
BOJ 27970 [OX] (0) | 2023.09.19 |
---|---|
BOJ 26258 [다중 일차 함수] (0) | 2023.09.19 |
BOJ 21735 [눈덩이 굴리기] (0) | 2023.09.18 |
BOJ 27963 [합금 주화] (0) | 2023.09.18 |
오늘 알게된 내용 2021.10.03 (0) | 2021.10.03 |