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...