如何优化???(#8 #9 #10 TLE)
查看原帖
如何优化???(#8 #9 #10 TLE)
1165197
Eastern_Leaf楼主2024/9/28 20:05
#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    int d[114514];
    memset(d,0,sizeof(d));
    cin>>n;
    for(int i = 1;i<=n;i++){
        cin>>d[i];
    }
    int maxn = n,l = 1,mr = n,ans = 0,ml = 1;
    while(1){
        maxn = 0;
        l = 1;
        for(int i = 1;i<=n+1;i++){
            if(d[i] == 0){
                if(i-l >= maxn){
                    maxn = i-l;
                    ml = l;
                    mr = i-1;
                }
                l = i+1;
            }
        }
        maxn = mr-ml+1;
        if(maxn == 0) break;
        for(int i = ml;i<=mr;i++){
            d[i]--;
        }
        ans++;
    }
    cout<<ans;
}
2024/9/28 20:05
加载中...