ac

瑞瑞 · 发布于 2026-05-31 · 浏览 141 回复 0

include<bits/stdc++.h>

using namespace std; int dp[501][2001];

int main(){ int n,L; int l;

cin>>n>>L;
memset(dp,0x3f,sizeof dp);dp[0][0]=0;
for(int i=0;i<n;i++){
	int c,l;
	cin>>c>>l;
	for(int j=0;j<=L;j++){
		dp[i+1][j]=min(dp[i+1][j],dp[i][j]);
		dp[i+1][min(j+l,L)]=min(dp[i+1][min(j+l,L)],dp[i][j]+c);
	}
}
if(dp[n][L]>1e9)cout<<"no solution";
else{
	cout<<dp[n][L];
}
return 0;

}

全部回复 共 0 条

还没有人回复。往下写第一条。

发表回复