Posted on 2010-03-10 20:28
Uriel 阅读(433)
评论(0) 编辑 收藏 引用 所属分类:
POJ 、
模拟 、
数学
还是09年暑假集训开始不久的某天晚上做的一道题了。。当时真是弱啊。。以切水为生。。只会模拟然后找规律。。
正好有人问,就在这里贴一下,当时的代码好WS。。大家无视之。。
方法么。。就是先放6*6,5*5,4*4,3*3然后先尽量在缝隙里塞2*2,1*1,不够的话再另外用新的装,每种情况塞几个啥的那些数字草稿纸上画画就出来了~
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int w1,w2,w3,w4,w5,w6,sum,x,s1,y,s2,temp;
int main()
{
while(1)
{
scanf("%d %d %d %d %d %d",&w1,&w2,&w3,&w4,&w5,&w6);
if(w1==0 && w2==0 && w3==0 && w4==0 && w5==0 && w6==0)exit(0);
temp=w2;
s2=0;
sum=w6+w5+w4+ceil(w3/4.0);
s2+=11*w5;
w2-=5*w4;
s2+=20*w4;
if(w3%4==1)
{
w2-=5;
s2+=27;
}
else if(w3%4==2)
{
w2-=3;
s2+=18;
}
else if(w3%4==3)
{
w2-=1;
s2+=9;
}
x=0;
if(w2>=0)
{
sum+=ceil(w2/9.0);
s2+=36*(ceil(w2/9.0));
w1=w1-s2+temp*4;
if(w1>0)sum+=ceil(w1/36.0);
}
else
{
w1=w1-s2+temp*4;
if(w1>0)sum+=ceil(w1/36.0);
}
printf("%d\n",sum);
}
return 0;
}