Algorithm/BOJ

KOI 2019 1차 초등부 / 막대기 - 17608

jhg0406 2020. 7. 31. 14:36
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int N;
int arr[100001];
 
int main() {
    ios_base::sync_with_stdio(0), cin.tie(0);
    cin >> N;
    for(int i= 0 ;i<N; ++i) cin >> arr[i];
    int ans = 0;
    int M = 0;
    for(int i = N-1; i>=0--i)
        if(arr[i] > M) {
            ++ans;
            M = arr[i];
        }
    cout << ans;
}
cs

 

 

 

 

 

 

https://www.acmicpc.net/problem/17608

 

17608번: 막대기

아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로

www.acmicpc.net

 

 

 

 

 

 

막대기

오른쪽 부터 막대기의 길이를 살펴보며 현재까지 본 막대길이중 가장 큰 값을 저장하면서 해당 값이 갱신될때마다 ++cnt해주면 정답을 구할 수 있습니다.