Submission #586328

#TimeUsernameProblemLanguageResultExecution timeMemory
586328SeDunionFriend (IOI14_friend)C++17
0 / 100
13 ms23776 KiB
#include "friend.h" #include<iostream> #include<assert.h> #include<vector> using namespace std; const int N = 1e6 + 123; vector<int>g[N]; int c[N]; int used[N]; void dfs(int v, int &a, int &b) { a += c[a]; used[v] = 1; for (int to : g[v]) if (!used[to]) { dfs(to, b, a); } } int findSample(int n,int confidence[],int host[],int protocol[]){ for (int i = 1 ; i < n ; ++ i) { assert(host[i] < i); } for (int i = 0 ; i < n ; ++ i) { c[i] = confidence[i]; } for (int i = 1 ; i < n ; ++ i) { int j = host[i]; g[j].emplace_back(i); g[i].emplace_back(j); } int a = 0, b = 0; dfs(0, a, b); return max(a, b); }
#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...