按照题意模拟即可,看不懂就是出题人语文没学好。
附队友代码:
#include <bits/stdc++.h>
#include <cstring>
#define MAXN 103
using namespace std;
int a[MAXN];
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int n,m,k;
int sum = 0;
scanf("%d%d%d",&n,&m,&k);
for(int i = 1;i <= n;i++)
{
scanf("%d",&a[i]);
sum += a[i];
}
int ans = 0,res;
int now = 0;
while(now < sum)
{
ans++;
res = m;
for(int i = 1;i <= n;i++)
if(a[i])
{
while(a[i] && res)
{
a[i]--;
res--;
now++;
}
if(res <= k)
break;
res -= k;
}
//printf("%d\n",now);
}
printf("%d\n",ans);
}
}
京公网安备 11010502036488号