Submission #764354

#TimeUsernameProblemLanguageResultExecution timeMemory
764354boris_mihovDancing Elephants (IOI11_elephants)C++17
26 / 100
9040 ms1972 KiB
#include "elephants.h" #include <algorithm> #include <iostream> #include <numeric> #include <cassert> #include <random> #include <vector> #include <set> typedef long long llong; const int MAXN = 150000 + 10; const int INF = 2e9; int n, len; int a[MAXN]; int x[MAXN]; std::multiset <int> ms; void init(int N, int L, int X[]) { n = N; len = L; for (int i = 0 ; i < n ; ++i) { a[i + 1] = x[i + 1] = X[i]; ms.insert(X[i]); } } int update(int idx, int y) { idx++; ms.erase(ms.find(x[idx])); x[idx] = y; ms.insert(y); int coveredTo = -1, ans = 0; while (true) { auto it = ms.upper_bound(coveredTo); if (it == ms.end()) { break; } ans++; coveredTo = (*it) + len; } 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...