Submission #607313

#TimeUsernameProblemLanguageResultExecution timeMemory
607313MohamedFaresNebiliFriend (IOI14_friend)C++14
16 / 100
1 ms340 KiB
#include <bits/stdc++.h> /// #pragma GCC optimize ("Ofast") /// #pragma GCC target ("avx2") /// #pragma GCC optimize("unroll-loops") using namespace std; using ll = long long; using ld = long double; #define ff first #define ss second #define pb push_back #define all(x) (x).begin(), (x).end() #define lb lower_bound const int MOD = 998244353; int par[1001], res[1001]; int findSet(int v) { if(par[v] == v) return v; return par[v] = findSet(par[v]); } void unionSet(int u, int v) { u = findSet(u), v = findSet(v); if(u == v) return; par[u] = v; res[v] = max(res[v], res[u]); } int findSample(int N, int* confidence, int* host, int* protocol) { for(int l = 0; l < N; l++) par[l] = l, res[l] = confidence[l]; for(int l = 1; l < N; l++) { if(protocol[l] < 2) continue; unionSet(l, host[l]); } int ans = 0; for(int l = 0; l < N; l++) { if(par[l] != l) continue; ans += res[l]; } return ans; }
#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...