您的位置:首页 > 其它

poj1017:装箱问题

2016-04-23 20:04 162 查看
ac代码
#include<stdio.h>

int main(void) {
int x,y;
char line[10];
while(1){						//poj编译不通过while(true)……
int N = 0;
x = y =0;
int a,b,c,d,e,f;
scanf("%d %d %d %d %d %d",&a,&b,&c,&d,&e,&f);
if(a==0&&b==0&&c==0&&d==0&&e==0&&f==0) break;	//终止条件:都为0
N = f+e+d+((c+3)/4);				//需要单独包裹的货物
y = d*5;					//算出可以盛下B货物的个数
if(c%4==1) y += 5;
else if(c%4==2) y += 3;
else if(c%4==3) y += 1;
if(b>y) {					//如果不够则加包裹
N += (b-y+8)/9;
}
x = 36*N - 36*f - 25*e - 16*d - 9*c - 4*b;	//算出乘完B后,能盛A的个数
if(a>x) {					//不够,加包裹
N += (a-x+35)/36;
}
printf("%d\n",N);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: