hdu 3177 Crixalis's Equipment (贪心- - 排序)
2014-03-03 08:27
399 查看
题意就是要把n样体积为Ai的东西搬到总体积为v的洞里。但是第i样东西能搬进去的前提是
洞的剩余体积>=Bi(Bi>=Ai)。问是否能把所有东西都搬进去。
算法:
比赛时直接按Bi降序排。后来yy讲了以后顿悟。
设ai>aj,bi>bj。
如果先把Bi大的放进洞里,如果刚好ai很大,那么当剩下的空间小于Bj时,第j个物品就放不进去了。
但是如果先放第j个,那么如果剩下的空间足够大,则可以继续放入第i个物品。
例如: 20 2
10 15
1 12 答案是Tes,如果只按bi降序排则答案变为No。
所以不是单纯地只与Bi的值有关。仅考虑两个物品的情况得到排序准则。
如果先放i,那么两个物品都能放入所需最大的剩余空间为 ai+bj;
如果先放j,那么两个物品都能放入所需最大的剩余空间为 aj+bi.
那么, ai+bj>aj+bi的时候先放i.
洞的剩余体积>=Bi(Bi>=Ai)。问是否能把所有东西都搬进去。
算法:
比赛时直接按Bi降序排。后来yy讲了以后顿悟。
设ai>aj,bi>bj。
如果先把Bi大的放进洞里,如果刚好ai很大,那么当剩下的空间小于Bj时,第j个物品就放不进去了。
但是如果先放第j个,那么如果剩下的空间足够大,则可以继续放入第i个物品。
例如: 20 2
10 15
1 12 答案是Tes,如果只按bi降序排则答案变为No。
所以不是单纯地只与Bi的值有关。仅考虑两个物品的情况得到排序准则。
如果先放i,那么两个物品都能放入所需最大的剩余空间为 ai+bj;
如果先放j,那么两个物品都能放入所需最大的剩余空间为 aj+bi.
那么, ai+bj>aj+bi的时候先放i.
#include<cstdio> #include<iostream> #include<cstring> #include<string> #include<queue> #include<stack> #include<algorithm> #include<vector> #include<map> #include<cmath> #include<cctype> using namespace std; struct node { int a,b; }t[1010]; bool cmp(node x,node y) { return x.b+y.a>y.b+x.a; } int main() { int T,V,n; scanf("%d",&T); while(T--) { memset(t,0,sizeof(t)); scanf("%d%d",&V,&n); for(int i=0;i<n;i++) scanf("%d%d",&t[i].a,&t[i].b); sort(t,t+n,cmp); int sum=V,succ=0; for(int i=0;i<n;i++) { if(t[i].b>sum) { succ=1; break; } sum-=t[i].a; } if(!succ) puts("Yes"); else puts("No"); } return 0; }
相关文章推荐
- HDU 3177 Crixalis's Equipment 贪心
- hdu 3177 Crixalis's Equipment(贪心+差排)
- 【巧妙的贪心条件】HDU 3177—— Crixalis's Equipment
- HDU 3177 Crixalis's Equipment(贪心)
- hdu 3177 Crixalis's Equipment(贪心)
- HDU 3177 Crixalis's Equipment (贪心+差排)
- HDU 3177 Crixalis's Equipment 贪心
- HDU 3177 Crixalis's Equipment 贪心
- hdoj 3177 Crixalis's Equipment 【贪心】
- 【贪心】 HDOJ 3177 Crixalis's Equipment
- hdu_3177_Crixalis's Equipment
- hdu 3177 Crixalis's Equipment
- HDU 3177 Crixalis's Equipment(贪心算法)
- HDU 3177 Crixalis's Equipment
- hdu——3177——Crixalis's Equipment
- HDU 3177 Crixalis's Equipment
- HDU 3177 Crixalis's Equipment(贪婪)
- HDU 3177 Crixalis's Equipment(很巧妙的贪心)
- HDU1.3.7 Crixalis's Equipment
- HDU ACM 3177 Crixalis's Equipment [贪心][差值排序]