标签:系统 选择 des field using 情况 sample name 出现
1 #include<iostream> 2 using namespace std; 3 struct sb 4 { 5 int val,f,m; 6 }a[1001]; 7 int v[1001][1001],f[1001][1001]; 8 int dp(int x,int sum) 9 { 10 if (v[x][sum]) return f[x][sum]; 11 if (!sum) return f[x][sum]=0; 12 if (!x) return f[x][sum]=-1e9; 13 if (sum==1) return f[x][sum]=a[x].val; 14 int ans=-1e9; 15 for (int i=0;i<sum;i++) 16 ans=max(ans,a[x].val+dp(a[x].f,i)+dp(a[x].m,sum-i-1)); 17 v[x][sum]=1; 18 f[x][sum]=ans; 19 return ans; 20 } 21 int main () 22 { 23 int n,k; 24 cin>>n>>k; 25 for (int i=2;i<=n;i++) 26 cin>>a[i].val; 27 for (int i=1;i<=n;i++) 28 cin>>a[i].f>>a[i].m; 29 cout<<dp(1,k+1); 30 }
标签:系统 选择 des field using 情况 sample name 出现
原文地址:https://www.cnblogs.com/zjzjzj/p/10317057.html