제출 #799937

#제출 시각아이디문제언어결과실행 시간메모리
799937Sohsoh84코끼리 (Dancing Elephants) (IOI11_elephants)C++17
26 / 100
9045 ms1500 KiB
#pragma GCC optimize("unroll-loops") #pragma GCC optimize("O3") #include "elephants.h" #include <bits/stdc++.h> #pragma GCC target("avx2") using namespace std; const int MAXN = 70000; int X[MAXN], n, L; int A[MAXN]; // TODO: multiset void init(int N, int L_, int X_[]) { L = L_; for (int i = 0; i < N; i++) { X[i] = X_[i]; A[i] = X[i]; } n = N; } int update(int i, int y) { int ind = lower_bound(A, A + n, X[i]) - A; int tx = X[i]; X[i] = y; A[ind] = y; if (tx < y) { for (int i = 0; i < n - 1; i++) if (A[i] > A[i + 1]) swap(A[i], A[i + 1]); } else { for (int i = n - 1; i > 0; i--) { if (A[i] < A[i - 1]) swap(A[i], A[i - 1]); } } int ans = 0; int v = -(L + 1); for (int i = 0; i < MAXN; i++) { if (A[i] > v + L) { v = A[i]; ans++; } } 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...