题目链接:FZU 2138 久违的月赛之一
先让所有人都做对两个题,那现在如果还有剩下的题的话就肯定有人获奖,让获奖的人都做对五个题,因为最后一句话说了每题的通过人数一定大于等于最低获奖人数,那这里sum / 3或者(sum / 3 + 1)就是获奖人数,不用考虑这个数大于最少AC数,这个是跟下一道题目的区别。因为做对5题的人数不可能超过最少AC数。
好吧,写到这里我发现我也不太懂这个题了==。。
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int T;
scanf("%d", &T);
while(T--)
{
int n, sum = 0, temp;
scanf("%d", &n);
for(int i = 0; i < 5; i++)
{
scanf("%d", &temp);
sum += temp;
}
int res = sum - 2 * n;
if(res < 0)
{
printf("0\n");
continue;
}
if(res % 3 == 0)
printf("%d\n", res / 3);
else
printf("%d\n", res / 3 + 1);
}
return 0;
}