Submission #1173716

#TimeUsernameProblemLanguageResultExecution timeMemory
1173716SpyrosAlivDigital Circuit (IOI22_circuit)C++20
2 / 100
180 ms4788 KiB
#include <bits/stdc++.h> using namespace std; const int MOD = 1e9 + 2022; int n; vector<vector<int>> tree; vector<int> dp; bool binary = true; bool sub1 = false; void init(int N, int M, vector<int> P, vector<int> A) { n = N + M; if (N == 1) sub1 = true; tree.clear(); tree.resize(n); for (int i = 1; i < n; i++) { tree[P[i]].push_back(i); tree[i].push_back(P[i]); if ((i - 1) / 2 != P[i]) { binary = false; } } dp.assign(n, 0); for (int i = 0; i < M; i++) { dp[i + N] = A[i]; } } int count_ways(int L, int R) { if (sub1) { int tot = 0; for (int i = L; i <= R; i++) dp[i] = !dp[i]; for (int i = 0; i < n; i++) tot += dp[i]; return tot; } return 0; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...