这比赛真的是不要不要的pending了一丅午,也不知道对错直接做过去就是了,也没有管太多!
来我们先来放松下,听听儿歌一起“唱”。
两只老虎两只老虎跑得快跑嘚快。
一只没有耳朵一只没有尾巴。
Tmk也觉得很奇怪因为在他面前突然出现了一群这样的老虎,有的没耳朵有的没尾巴,不过也有正瑺的
现在Tmk告诉你这群老虎的耳朵个数,尾巴条数以及老虎的腿的数目,问你有多少只是正常的
第一种(正常的):有2个耳朵、1条尾巴、4条腿
第二种(没耳朵):有0个耳朵、1条尾巴、4条腿
第三种(没尾巴):有2个耳朵、0条尾巴、4条腿
第一行一个整数T表示有多少组样例。
接下来每一行一个样例:
包含三个整数ab,c表示总共有a个耳朵b条尾巴,c(<=4000)条腿数据保证有解。
对于每组样例输出一行表示有多少只正瑺的老虎。
还是给下正解的思路吧可能是因为数据太水就过了!
思路:先将所有的数排序,先特判一下第一个数是不是1如果不是的话,那么肯定不可能有x否则就找到第一个a[i]使得
另外一种解法:
首先,先对 a[i]从小到大排序假设对于前 i 个硬币,我们可以组合成 0~y:
①如果 a[i+1]>y+1那么从 i+1~n 中任意取硬币,构成的和都>y+1所以必定构造不出
y+1,于是答案等于 y
②如果 a[i+1]<=y+1,那么前 i+1 位可以组合成 0~y+a[i+1]
所以只需要对硬币从小到大排序,然后从第一个硬币枚举到最后一个硬币或者中途有
某个数够不出来即可得到答案。
要注意输出要用long long型,否则会溢出!
下面给出AC代码: