Submission #785026

#TimeUsernameProblemLanguageResultExecution timeMemory
785026AbdelmagedNourDancing Elephants (IOI11_elephants)C++17
50 / 100
9036 ms3404 KiB
#include <bits/stdc++.h> #pragma GCC optimize("Ofast") //#include "grader.cpp" using namespace std; const int MAXN=50000; int arr[MAXN+2],pos[MAXN]; int n,len; void init(int N, int L, int X[]){ n=N;len=L; arr[N+1]=2e9;arr[0]=-2e9; for(int i=0;i<N;i++)arr[i+1]=pos[i]=X[i]; } int update(int idx, int y){ int j=0; while(arr[j]!=pos[idx])j++; arr[j]=pos[idx]=y; while(arr[j]<arr[j-1])swap(arr[j],arr[j-1]),j--; while(arr[j]>arr[j+1])swap(arr[j],arr[j+1]),j++; int res=1,lst=arr[1]; for(int i=1;i<=n;i++){ if(arr[i]-lst>len)res++,lst=arr[i]; } return res; }
#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...