提交时间:2023-02-02 16:55:05

运行 ID: 68186

#include<bits/stdc++.h> using namespace std; long long dp[55][55],si[1005],bi[1005],c[1005],n,s,b; int main(){ memset(dp,127,sizeof(dp)); cin>>n>>s>>b; for(int i=1;i<=n;i++)cin>>si[i]>>bi[i]>>c[i]; for(int i=1;i<=n;i++)for(int j=s;j>=0;j--)for(int k=b;k>=0;k--){ int x=min(s,j+si[i]),y=min(b,k+bi[i]); if(dp[x][y]>dp[j][k]+c[i])dp[x][y]=dp[j][k]+c[i]; } printf("%lld\n",dp[s][b]<<1); return 0; }