POJ -- 1017 Packets

来源:互联网 发布:知彼手机定位破解版 编辑:程序博客网 时间:2024/05/17 02:23

代码实现:

#include<stdio.h>#include<string.h>int p[10];int main(){    while(~scanf("%d%d%d%d%d%d",&p[1],&p[2],&p[3],&p[4],&p[5],&p[6]),(p[1]||p[2]||p[3]||p[4]||p[5]||p[6])){        int max_p=0,t,tt;        max_p=p[6]+p[5]+p[4]+p[3]/4;        p[3]=p[3]%4;        if(p[3]!=0) max_p++;        t=p[5]*11;        if(p[1]>=t) p[1]-=t;        else p[1]=0;        t=p[4]*5;        if(p[2]>=t) p[2]-=t;        else{            tt=(t-p[2])*4;            p[2]=0;            if(p[1]>=tt) p[1]-=tt;            else p[1]=0;        }        if(p[3]!=0){            if(p[3]==1) t=5;            else if(p[3]==2) t=3;            else t=1;            if(p[2]>=t){                p[2]-=t;                tt=36-p[3]*9-t*4;            }            else{                tt=36-p[3]*9-p[2]*4;                p[2]=0;            }            if(p[1]>=tt) p[1]-=tt;            else p[1]=0;        }        if(p[2]>0) max_p+=p[2]/9;        if(p[2]%9!=0){            max_p++;            t=36-p[2]%9*4;            if(p[1]>=t) p[1]-=t;            else p[1]=0;        }        if(p[1]!=0) max_p+=p[1]/36;        if(p[1]%36!=0) max_p++;        printf("%d\n",max_p);    }}


0 0
原创粉丝点击