WA求调
查看原帖
WA求调
1323415
wky_wsy楼主2024/9/17 09:35

全WA

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,c=0;
    scanf("%d",&n);
    int a[n],t[n+1]={0};
    for(int i=0;i<n;i++) scanf("%d",&a[i]);
    sort(a,a+n);
    
    while(1){
        int q=0,z=0;
        for(int i=0;i<n;i++){
            if(a[i]!=0){
                q=i;
                break;
            }
        }
        if(q==0) break;
        for(int j=n-1;j>=0;j--){
            if(a[j]!=0){
                z=j;
                break;//因为排序后,小的一定是比大的先填完,所以不可能出现中间有0的情况
            }
        }
        if(q==z){
            a[q]--;
        }
        for(int i=q;i<z;i++){
            a[i]--;
        }
        c++;
    }
    printf("%d",c);
}
2024/9/17 09:35
加载中...