Submission #641736

#TimeUsernameProblemLanguageResultExecution timeMemory
641736Vladth11The Potion of Great Power (CEOI20_potion)C++14
0 / 100
3041 ms26152 KiB
#include <bits/stdc++.h> #define debug(x) cerr << #x << " " << x << "\n" #define debugs(x) cerr << #x << " " << x << " " using namespace std; typedef long long ll; typedef pair <int, int> pii; const int NMAX = 100001; const int VMAX = 101; const int INF = 2e9; const int MOD = 1000000007; const int BLOCK = 447; const int base = 117; const int nr_of_bits = 24; const int inv2 = 500000004; set <int> events[NMAX]; int a[NMAX]; void init(int N, int D, int H[]) { for(int i = 0; i < N; i++){ a[i] = H[i]; } } void baga(int a, int b){ if(events[a].find(b) == events[a].end()) events[a].insert(b); else events[a].erase(b); } void curseChanges(int U, int A[], int B[]) { for(int i = 0; i < U; i++){ baga(A[i], B[i]); baga(B[i], A[i]); } } int question(int x, int y, int v) { set <int> stX = events[x], stY = events[y]; int last, ultim = -1; int minim = 1e9; if(stX.size() == 0 || stY.size() == 0) return minim; set <int> nou; for(auto p : stX){ nou.insert(a[p]); } for(auto p : stY){ int val = a[p]; auto it = nou.lower_bound(val); if(it != nou.end()){ minim = min(minim, abs((*it) - val)); } it = nou.upper_bound(val); if(it != nou.begin()){ it = prev(it); minim = min(minim, abs((*it) - val)); } } return minim; }

Compilation message (stderr)

potion.cpp: In function 'int question(int, int, int)':
potion.cpp:43:9: warning: unused variable 'last' [-Wunused-variable]
   43 |     int last, ultim = -1;
      |         ^~~~
potion.cpp:43:15: warning: unused variable 'ultim' [-Wunused-variable]
   43 |     int last, ultim = -1;
      |               ^~~~~
#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...