rt
#include<bits/stdc++.h>
#include<stack>
using namespace std;
long long now;
struct task
{
long long x,t,y,r;
long long sy=0;
}a[505];
bool com(task pre,task nxt)
{
return pre.x<nxt.x;
}
int main()
{
long long n,s1,s2,f[505][505]={};
cin>>n>>s1>>s2;
s2+=s1;
for(int i=1;i<=n;i++)
{
cin>>a[i].x>>a[i].t>>a[i].y>>a[i].r;
f[i][a[i].x]=a[i].t;
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=s2;j++)
{
if(j<s1)
{
f[i][j]=min(f[i-1][j],f[i-1][j-a[i].x]+a[i].t);
}
else if(j>=s1&&j<s2) f[i][j]=min(f[i-1][j],f[i-1][j-a[i].y]+a[i].r);
}
}
cout<<f[n][s2];
}
~~~~~~
它一直报0