Submission #931614

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
9316142024-02-22 07:06:28ArpRainforest Jumps (APIO21_jumps)C++17
100 / 100
820 ms63096 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 2e5+10;
const int K = 18;
const int INF = 1e9;
int up[K][N], mvr[K][N], mvl[K][N], h[N], idx[N], lh[N], rh[N], n;
int sp[K][N], lg[N];
int que(int l, int r) {
int i=lg[r-l+1];
return max(sp[i][l], sp[i][r-(1<<i)+1]);
}
void init(int N, std::vector<int> H) {
n=N;
for (int i=0; i<n; ++i) h[i+1]=H[i], idx[h[i+1]]=i+1;
h[0]=INF-1, h[n+1]=INF;
stack<int> st; st.push(0);
for (int i=1; i<=n; ++i) {
while (h[st.top()] <= h[i]) st.pop();
assert(!st.empty());
lh[i]=st.top(), st.push(i);
} st=stack<int>();
for (int i=1; i<=n; ++i) sp[0][i]=h[i];
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...