记录编号 |
325235 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[USACO Jan08] iCow播放器 |
最终得分 |
100 |
用户昵称 |
Mealy |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.043 s |
提交时间 |
2016-10-19 10:39:55 |
内存使用 |
0.29 MiB |
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
const int nmax=1086;
int n,m;
int maxs=0;
int cnt=1;
int val[nmax];
void PreDo()
{
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
scanf("%d",&val[i]);
if(val[i]>val[maxs])
{
maxs=i;
}
}
while(cnt<=m)
{
++cnt;
printf("%d\n",maxs);
int tmp=val[maxs];
val[maxs]=0;
if(tmp%(n-1)==0)
{
int add=tmp/(n-1);
for(int i=1;i<=n;i++)
{
if(i!=maxs)
{
val[i]+=add;
}
}
}
else
{
int applepen=tmp%(n-1);
int add=tmp/(n-1);
for(int i=1;i<=n;i++)
{
if(i!=maxs)
{
val[i]+=add;
}
}
if(maxs<=applepen)
{
for(int i=1;i<=applepen+1;i++)
{
if(i!=maxs)
{
val[i]++;
}
}
}
else
{
for(int i=1;i<=applepen;i++)
{
val[i]++;
}
}
}
for(int i=1;i<=n;i++)
{
if(val[i]>val[maxs])
{
maxs=i;
}
}
}
}
int main()
{
freopen("icow.in","r",stdin);
freopen("icow.out","w",stdout);
PreDo();
return 0;
}