wrongnumber 2014-02-13 22:10:50
点我顶贴
收藏
删除
卧槽......
#include<iostream>
#include<cstdio>
using namespace std;
struct data{
int c,t;};
int n,t,q,p,v,dp[108002];
data a[32][2];
int main()
{
scanf("%d%d",&n,&t);
for (q=0;q<n;q++) scanf("%d%d%d%d",&a[q][0].c,&a[q][0].t,&a[q][1].c,&a[q][1].t);
for (q=0;q<n;q++)
for (v=t;v>=0;v--)
for (p=0;p<2;p++)
if (v-a[q][p].t>=0)
dp[v]=max(dp[v],dp[v-a[q][p].t]+a[q][p].c);
printf("%d",dp[t]);
//system("pause");
return 0;
}