20分求救!!
查看原帖
20分求救!!
672632
Betty1236楼主2023/7/30 22:02
#include <iostream> 
#include <algorithm>
using namespace std;
int main(){
	int t,m;//容量,个数 
	cin>>t>>m;
	int dp[t+1][m+1];
	int w[m];//重量(时间) 
	int v[m];//价值 
	int data1,data2; 
	for(int i=0;i<m;i++){cin>>w[i+1]>>v[i+1];}
	for(int i=0;i<t+1;i++){dp[i][0]=0;}
	for(int i=0;i<m+1;i++){dp[0][i]=0;}
	for(int j=1;j<m+1;j++){
		for(int i=1;i<t+1;i++){
			if(w[j]>i){
				dp[i][j]=dp[i][j-1];}
	        else{
	        	data1=dp[i][j-1];//不装
				data2=dp[i-w[j]][j-1]+v[j];//装 
				dp[i][j]=max(data1,data2);
			}	
		}
	}
	cout<<dp[t][m];
}

这是我的代码 1,3AC 剩下全是WA

2023/7/30 22:02
加载中...