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<bits/stdc++.h>
#include<popa.h>
using namespace std;
stack<int> open,idle;
int solve(int N, int* Left, int* Right)
{
for(int i=0;i<N;i++)
{
int prev=-1;
while(open.size()&&query(open.top(),i,i,i))
{
prev=open.top();
open.pop();
}
Left[i]=prev;
open.push(i);
}
open=idle;
for(int i=N-1;i>=0;i--)
{
int prev=-1;
while(open.size()&&query(i,open.top(),i,i))
{
prev=open.top();
open.pop();
}
Right[i]=prev;
open.push(i);
}
set<int> seen={};
for(int i=0;i<N;i++)
{
seen.insert(Left[i]);
seen.insert(Right[i]);
}
for(int i=0;i<N;i++)
if(seen.count(i)==0)return i;
assert(0==1);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |