完全なバックパックの問題(スペース最適化、印刷パス)



​
//HDU1114
//    :    HDU1114     
//      : N   , i       vc[i],   w[i],    
//     C   ,             
//                :dp[i][v]=max(dp[i-1][v],dp[i][v-vc[i]]+w[i])
//              :dp[v]=max(dp[v],dp[v-vc[i]+w[i])
//             ;  dp           
//    dp    0,dp[0]=0;   dp=inf(inf        )dp[0]=0; 
#include 
#include 
#define maxn 505
#define inf 0x3f3f3f3f
using namespace std;
int p[maxn];int w[maxn];
int dp[10005];
int path[maxn][10005];//       
int min(int a,int b)
{
	if(a>t;
	while(t--)
	{
		int E,F;cin>>E>>F;
		int n;cin>>n;
		for(int i=0;i>p[i]>>w[i];
		memset(dp,inf,sizeof(dp));dp[0]=0;
		memset(path,0,sizeof(path)); 
		//          :memset(dp,-inf,sizeof(dp));dp[0]=0; 
		for(int i=0;idp[j-w[i]]+p[i])
				{
					dp[j]=dp[j-w[i]]+p[i];
					path[i][j]=1;//          
				}
			}
		}
		if(dp[F-E]!=inf)cout<=0&&j>=0)
		{
			if(path[i][j])
			{
				cout<