This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "elephants.h"
#include<bits/stdc++.h>
using namespace std;
#pragma GCC optimize(2)
int n,l;
int arr[50100],ps[50100],st[50100];
void init(int N, int L, int X[]){
n = N;
l=L;
for(int i=0;i<N;i++)
st[i]=ps[i]=i,arr[i]=X[i];
}
int update(int i, int y) {
if(!l)return n;
int ans=0,lst=-1e9;
arr[i]=y;
while(ps[i]<n-1&&arr[i]>arr[st[ps[i]+1]])
swap(ps[i],ps[st[ps[i]+1]]),swap(st[ps[i]],st[ps[i]-1]);
while(ps[i]&&arr[i]<arr[st[ps[i]-1]])
swap(ps[i],ps[st[ps[i]-1]]),swap(st[ps[i]],st[ps[i]+1]);
for(int b=0;b<n;b++)
if(lst+l<arr[st[b]])
lst=arr[st[b]],ans++;
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |