Submission #1046562

#TimeUsernameProblemLanguageResultExecution timeMemory
1046562oscar1fDancing Elephants (IOI11_elephants)C++17
50 / 100
9061 ms10588 KiB
#include<bits/stdc++.h> #include "elephants.h" using namespace std; const int MAX_ELEPH=150*1000+5,INFINI=1000*1000*1000+5; int nbEleph,taillePhoto; pair<int,int> posTri[MAX_ELEPH]; void init(int N, int L, int X[]) { nbEleph=N; taillePhoto=L; for (int i=0;i<nbEleph;i++) { posTri[i]={X[i],i}; } } int calc() { int ans=0,dernDeb=-INFINI; for (int i=0;i<nbEleph;i++) { if (dernDeb+taillePhoto<posTri[i].first) { ans++; dernDeb=posTri[i].first; } } return ans; } int update(int posModif, int valNouv) { int pos=0; while (posTri[pos].second!=posModif) { pos++; } posTri[pos].first=valNouv; while (pos>0 and posTri[pos]<posTri[pos-1]) { swap(posTri[pos-1],posTri[pos]); pos--; } while (pos<nbEleph-1 and posTri[pos]>posTri[pos+1]) { swap(posTri[pos],posTri[pos+1]); pos++; } return calc(); }
#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...