P1853
  • 板块题目总版
  • 楼主畅想未来
  • 当前回复1
  • 已保存回复1
  • 发布时间2021/7/13 23:31
  • 上次更新2023/11/4 14:52:27
查看原帖
P1853
243326
畅想未来楼主2021/7/13 23:31

请问我的代码为何在d>=3时运行不了?

#include<bits/stdc++.h>
using namespace std;
int s,n,d;
int main(){
	cin>>s>>n>>d;
	int f[12],w[12];
	for(int i = 1;i<=d;i++){
		cin>>f[i]>>w[i];
	}
	for(int i = 0;i<n;i++){
		int z[101][101]={};
	for(int x = 1;x<=d;x++){
	for(int j = 1;j<=s;j++){    
		    if(j<f[x]) z[x][j]=z[x-1][j];
			if(j>=f[x]) z[x][j]=max(z[x-1][j],z[x][j-f[x]]+w[x]);
		}
		}
		s+=z[d][s];
	}
	cout<<z[d][s];
	return 0;
} 
[P1853](https://www.luogu.com.cn/problem/P1853)







2021/7/13 23:31
加载中...