[백준] #9237 이장님 초대

문제
단순한 그리디 문제이다. 자라는 걸리는 시간이 긴 순으로 먼저 심으면 된다. 이장님은 나무가 다 자란 다음날 온다는 것을 명심해야한다.

#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;

int n,q;


int main(){
    cin>>n;
    vector<int> t;
    int day=1;
    long long maxd=0;

    for(int i=0;i<n;i++){
        cin>>q;
        t.push_back(q);

    }

    sort(t.begin(),t.end());

    if(n==1){
        cout<<day+t[0]+1;
        return 0;
    }

    maxd=day+t[t.size()-1];
    for(int i=t.size()-2;i>=0;i--){
        day++;
       //cout<<maxd<<" "<<day+t[i]<<endl;
       
        if(maxd>=day+t[i]){
            maxd=maxd;
        }

        else{
            maxd=day+t[i];
        }
       // cout<<maxd<<endl;
    }

    cout<<maxd+1;

    return 0;
    


}

좋은 웹페이지 즐겨찾기