PS

백준 9237. 이장님 초대

tose33 2021. 8. 13. 13:49

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

 

9237번: 이장님 초대

입력은 두 줄로 이루어져 있다. 첫째 줄에는 묘목의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄에는 각 나무가 다 자라는데 며칠이 걸리는지를 나타낸 ti가 주어진다. (1 ≤ ti ≤ 1,000,000)

www.acmicpc.net

 

1. 나무들이 다 자라는데 걸리는 수 t를 내림차순 정렬한다 

2. 첫날 부터 다음날로 넘어가면서, 오늘 날짜 + 해당 날에 심는 묘목이 걸리는 일수 + 1 의 최댓값을 갱신한다

   

 

#include <iostream>
#include <algorithm>
using namespace std;

int n;
int tree[100010];

int main()
{
    cin >> n;
    for(int i = 1; i <= n; i++)
    {
        cin >> tree[i];
    }

    // 내림차순 정렬
    sort(tree+1, tree+n+1, greater<>());

    int ans = 0;
    for(int i = 1; i <= n; i++)
    {
        // tree[i] 묘목이 다 자라는 날
        int grown = i + tree[i] + 1;
        ans = max(ans, grown);
    }
    cout << ans;
}