51nod的题都好恶心,这个题一开始我想的是把b[i]放里面然后枚举每个箭找能杀死的兔子,因为lower是找兔子里面大于等于这个箭的.我一开始想把迭代器--然后找.最后一直没调过,发现只需要把伤害和兔子的血量变为负值,就可以直接二分了在对钱和伤害排序的时候,因为我要把价格从小到大,然后箭的攻击从大到小,因为变为了负值,对其从小到大就是对其从大到小. #include<bits/stdc++.h> #define fp(i,a,b) for(int i=a;i<=b;i++) typedef long long ll; typedef double dl; using name...