Submission #447777

#TimeUsernameProblemLanguageResultExecution timeMemory
447777dxz05Dancing Elephants (IOI11_elephants)C++14
26 / 100
9079 ms1484 KiB
#pragma GCC optimize("Ofast") #pragma GCC target("avx,avx2,fma") #pragma GCC optimize("unroll-loops") #include "elephants.h" #include <bits/stdc++.h> using namespace std; const int MAXN = 2e5 + 3e2; int N, L; int X[MAXN], A[MAXN]; void init(int _N, int _L, int _X[]){ N = _N; L = _L; for (int i = 0; i < N; i++) X[i] = _X[i]; for (int i = 0; i < N; i++) A[i] = X[i]; sort(A, A + N); } int update(int pos, int val){ for (int i = 0; i < N; i++){ if (A[i] == X[pos]) A[i] = val; } X[pos] = val; for (int i = 0; i < N - 1; i++){ if (A[i] > A[i + 1]) swap(A[i], A[i + 1]); } for (int i = N - 1; i > 1; i--){ if (A[i - 1] > A[i]) swap(A[i - 1], A[i]); } //for (int i = 0; i < N; i++) cerr << X[i] << ' '; cerr << endl; //for (int i = 0; i < N; i++) cerr << A[i] << ' '; cerr << endl << endl; int ans = 1, last = A[0]; for (int i = 0; i < N; i++){ if (A[i] - last > L){ ans++; last = A[i]; } } 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...