记录编号 57723 评测结果 AAAAAAAAAA
题目名称 [NOIP 1996]砝码称重 最终得分 100
用户昵称 Gravatardigital-T 是否通过 通过
代码语言 C++ 运行时间 0.003 s
提交时间 2013-04-12 09:39:39 内存使用 3.28 MiB
显示代码纯文本
#include<fstream>
using namespace std;
ifstream fi("fmcz.in");
ofstream fo("fmcz.out");
int a[7];//个数
int b[7]={0,1,2,3,5,10,20};//质量
int sum=0,ans=0;
bool ri[1001]={false};
/*
void fightfor(int x,int y)
{
	if(y>x)return;
	if(y==x&&!ri[x])
	{
		num++;
		ri[x]=true;//fo<<x<<endl;
		return;
	}
	for(int i=1;i<=6;i++)
		if(a[i]>0)
		{
			a[i]--;
			fightfor(x,y+b[i]);
			a[i]++;
		}
}*/
int main()
{
	fi>>a[1]>>a[2]>>a[3]>>a[4]>>a[5]>>a[6];
	for(int i1=0;i1<=a[1];i1++)
	{sum+=i1*b[1];
	for(int i2=0;i2<=a[2];i2++)
	{sum+=i2*b[2];
	for(int i3=0;i3<=a[3];i3++)
	{sum+=i3*b[3];
	for(int i4=0;i4<=a[4];i4++)
	{sum+=i4*b[4];
	for(int i5=0;i5<=a[5];i5++)
	{sum+=i5*b[5];
	for(int i6=0;i6<=a[6];i6++)
	{sum+=i6*b[6];
		ri[sum]=true;//fo<<sum<<endl;
	sum-=i6*b[6];
	}sum-=i5*b[5];
	}sum-=i4*b[4];
	}sum-=i3*b[3];
	}sum-=i2*b[2];
	}sum-=i1*b[1];
	}
	sum=0;
	for(int k=1;k<=6;k++)sum+=a[k]*b[k];
	for(int k=1;k<=sum;k++)if(ri[k])ans++;
	fo<<ans;
	return 0;
}