Submission #98602

#TimeUsernameProblemLanguageResultExecution timeMemory
98602someone_aapopa (BOI18_popa)C++17
37 / 100
238 ms512 KiB
#include <bits/stdc++.h> #include "popa.h" #define ll long long #define pb push_back #define mp make_pair using namespace std; const int maxn = 1100; /*int query(int a, int b, int c, int d) { cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl; int answer; cin>>answer; return answer; }*/ int n; int parent[maxn]; int li[maxn], ri[maxn]; int solvef(int l, int r) { if(l > r) return -1; else if(l == r) return l; int index = -1; for(int i=l;i<=r;i++) { if(query(l, i, i, r)) { index = i; break; } } li[index] = solvef(l, index-1); ri[index] = solvef(index+1, r); //cout<<"["<<l<<", "<<r<<"] -> "<<index<<"\n"; return index; } // solve function int solve(int N, int *l , int *r) { for(int i=0;i<N;i++) { li[i] = ri[i] = -1; } n = N; int x = solvef(0, n-1); for(int i=0;i<n;i++) { l[i] = li[i]; r[i] = ri[i]; } return x; } /*int main() { int a[6], b[6]; cout<<solve(6, a, b); return 0; }*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...