poj 1017贪心-装箱

来源:互联网 发布:文字特效软件 编辑:程序博客网 时间:2024/06/06 04:44

点击打开链接

#include <iostream>#include <algorithm>using namespace std;int three[]={0,5,3,1}; // three[i]:3*3规格个数为 4k+i时 装i个的3*3Packet中能填多少个2*2的box  int main(){int b[7];while(1){int sum=0,ans=0;for(int i=1;i<=6;i++){cin>>b[i];sum+=b[i];if(i>=3){if(i==3){ans+=(b[i]+3)/4;}elseans+=b[i]; // box的规格大于>3的 都要新开一个Packet }}if(!sum) break;int k=three[b[3]%4]+5*b[4]; //装 4*4的Packet中还能装5个2*2的box;if(b[2]>k){int two=b[2]-k;ans+=(two+8)/9; //向上取整}int x=36*ans-36*b[6]-25*b[5]-16*b[4]-9*b[3]-4*b[2]; //以选Packet的剩余空间 if(b[1]>x){ans+=(b[1]-x+35)/36;}cout<<ans<<endl;}return 0;}


 

0 0
原创粉丝点击