Submission #1288809

#TimeUsernameProblemLanguageResultExecution timeMemory
1288809Faisal_SaqibFriend (IOI14_friend)C++17
19 / 100
2 ms2884 KiB
#include "friend.h" #include <bits/stdc++.h> using namespace std; const int N=1e5+100; int dp[N][2],a[N]; vector<int> ma[N]; void dfs(int x) // dp[x][0] = not taking, dp[x][1] = taking { dp[x][0]=0; dp[x][1]=a[x]; for(auto y:ma[x]) { dfs(y); dp[x][0]+=max(dp[y][0],dp[y][1]); dp[x][1]+=dp[y][0]; } } int findSample(int n,int confidence[],int host[],int protocol[]){ for(int i=0;i<n;i++)a[i]=confidence[i]; for(int i=1;i<n;i++) { ma[host[i]].push_back(i); } dfs(0); return max(dp[0][0],dp[0][1]); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...