Submission #398093

#TimeUsernameProblemLanguageResultExecution timeMemory
398093prvocisloFriend (IOI14_friend)C++17
11 / 100
1085 ms1732 KiB
#include <iostream> #include <vector> #include <algorithm> #include <set> #include <bitset> typedef long long ll; using namespace std; const int maxn = 10; int g[maxn]; bool is(int x, int i) { return (x & (1 << i)); } int findSample(int n, int c[], int h[], int pr[]) { for (int i = 1; i < n; i++) { if (pr[i]) g[i] = g[h[i]]; if (pr[i] != 1) g[i] |= (1 << h[i]); for (int j = 0; j < i; j++) if (is(g[i], j)) g[j] |= (1 << i); } int ans = 0; for (int m = 0; m < (1 << n); m++) { int s = 0, sum = 0;; for (int i = 0; i < n; i++) if (is(m, i)) s |= g[i], sum += c[i]; if (!(s & m)) ans = max(ans, sum); } 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...