为什么编译错误?有关注!!!
查看原帖
为什么编译错误?有关注!!!
1258313
aochiao楼主2024/5/19 16:29
#include<bits/stdc++.h>
using namespace std;
int n,m,dp[500][500],
vector<int> g[500];
void dfs(int x){
	for(int i=0;i<g[x].size();i++){
		int y=g[x][i];
		dfs(y);
		for(int j=m+1;j>=1;j--) for(int k=0;k<j;k++) dp[x][j]=max(dp[x][j],dp[y][k]+dp[x][j-k]);
	} 
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		int x,y;
		cin>>x>>y;
		g[x].push_back(i);
		dp[i][1]=y;
	}
	dfs(0);
	cout<<dp[0][m+1];
	return 0;
}
2024/5/19 16:29
加载中...