提交时间:2023-02-04 15:13:38

运行 ID: 68314

#include<bits/stdc++.h> using namespace std; long long x1[1001],x2[1001],w[1001],n,s,b; long long dp[1001][1001]; long long max(long long a,long long b){ return (a>=b)?a:b; } int main(){ cin>>n>>s>>b; for(long long i=1;i<=n;i++)cin>>x1[i]>>x2[i]>>w[i]; for(long long i=0;i<=1000;i++){ for(long long j=0;j<=1000;j++) dp[i][j]=922337203685477580; } dp[0][0]=0; for(long long k=1;k<=n;k++){ for(long long i=s;i>=0;i--){ for(long long j=b;j>=0;j--){ dp[i][j]=min(dp[max(0,i-x1[k])][max(0,j-x2[k])]+w[k]*2,dp[i][j]); } } } cout<<dp[s][b]; return 0; }