POJ 3665 模拟

按照题意模拟就OK了

//By SiriusRen
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int n,t,a[1005];
int main()
{
    scanf("%d%d",&n,&t);
    for(int i=1;i<=n;i++){
        scanf("%d",&a[i]);
    }
    for(int ii=1;ii<=t;ii++){
        int maxx=0,rec=0;
        for(int i=1;i<=n;i++){
            if(a[i]>maxx){
                maxx=a[i];rec=i;
            }
        }
        int q=maxx/(n-1);
        for(int i=1;i<=n;i++){
            if(i!=rec)a[i]+=q;
        }
        int rem=maxx-q*(n-1);
        for(int i=1;i<=rem;i++){
            if(i!=rec)a[i]++;
            else rem++;
        }
        a[rec]=0;
        printf("%d
",rec);
    }
}
原文地址:https://www.cnblogs.com/SiriusRen/p/6532288.html