Submission #1218198

#TimeUsernameProblemLanguageResultExecution timeMemory
1218198__moin__The Potion of Great Power (CEOI20_potion)C++20
0 / 100
3099 ms9336 KiB
#include <bits/stdc++.h> // #include "grader.cpp" using namespace std; // vector<set<int>> adj_sets; vector<vector<int>> adj; vector<int> heights; void init(int N, int D, int H[]) { adj.resize(N); heights.resize(N); for (int i = 0; i < N; i++) heights[i] = H[i]; } int u; void curseChanges(int U, int A[], int B[]) { u = U; for (int i = 0; i < U; i++) { int a = A[i], b = B[i];// a--; b--; if (!any_of(adj[a].begin(), adj[a].end(), [&](int x) {return x == b;})) { adj[a].push_back(b); adj[b].push_back(a); } else { adj[a].erase(find(adj[a].begin(), adj[a].end(), b)); adj[b].erase(find(adj[b].begin(), adj[b].end(), a)); } } // adj.resize(adj_sets.size()); // for (int i = 0; i < adj_sets.size(); i++) { // adj[i] = vector<int>(adj_sets[i].begin(), adj_sets[i].end()); // } } int question(int x, int y, int v) { // assert (v == u); // cerr << "X = " << x << ", Y = " << y << ", V = " << v << "\n"; vector<int>& sx = adj[x]; vector<int>& sy = adj[y]; int min_diff = 1e9; for (int a : sx) for (int b : sy) min_diff = min(min_diff, abs(heights[a] - heights[b])); return min_diff; }
#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...