http://acm.hdu.edu.cn/showproblem.php?pid=1085
//1304713 2009-04-24 16:34:31 Accepted 1085 156MS 324K 728 B C++ no way
#include<iostream>
using namespace std;
int main()
  {
int num[3];
 int t[3]= {1,2,5};
while(cin>>num[0]>>num[1]>>num[2])
 {
if(num[0] == 0 && num[1] == 0 && num[2] == 0)
break;

int outs[8005],temp[8005],i,j,k,s,N=0;

for(i=0;i<3;i++)
N += t[i] * num[i];

for(i=0;i<=N+1;i++)
outs[i] = temp[i] = 0;

for(i=0;i<=num[0];i++) //一定要有底层
outs[i] = 1;

for(i=1;i<=2;i++) //
 {
for(j=0;j<=N;j++)
 { if(outs[j] == 0) continue;
for(k=0,s=0; k+j <= N && s<=num[i] ;s++, k+=t[i]) //注意个数的控制~
 {
temp[k+j] += outs[j];
}
}
for(j=0;j<=N;j++)
 {
outs[j] = temp[j];
temp[j] = 0;
}
}

for(i=1;i<=N+1;i++)
if(outs[i] == 0)
break;
cout<<i<<endl;
}
return 0;
}
|