有人第四个测试点wa吗》》
查看原帖
有人第四个测试点wa吗》》
986836
Jeeff楼主2024/9/5 21:36
#include<bits/stdc++.h>
using namespace std;
int a[1000],n,i,dp[10001][10],shu[10]={1,2,3,5,10,20};
void d(int a)
{
	if(dp[a][9])
		return ;
	for(int i=0;i<6;i++)
	{
		if(dp[a-shu[i]][9] and dp[a-shu[i]][i])
		{
			for(int j=0;j<6;j++)
			{
				dp[a][j]=dp[a-shu[i]][j];
			}
			dp[a][i]--,dp[a][9]=1;
			return ;
		}
	}
	return ;
	
}
int main()
{
	int sum=0,ans=0;
	for(int i=0;i<6;i++)
	{
		cin>>a[i];
		sum+=a[i]*shu[i];
	}
	for(int j=0;j<6;j++)
	{
		dp[0][j]=a[j];
	}
	dp[0][9]=1;
	for(int i=1;i<=sum;i++)
	{
		d(i);
	}
	for(int i=1;i<=sum;i++)
	{
		ans+=dp[i][9];
	}
	cout<<"Total="<<ans;
}

下载数据之后和自己的答案对了是一样的啊~

2024/9/5 21:36
加载中...