Submission #92912

#TimeUsernameProblemLanguageResultExecution timeMemory
92912Pajarajapopa (BOI18_popa)C++17
0 / 100
21 ms376 KiB
#include <bits/stdc++.h>
#include "popa.h"
#define MAXN 1007
using namespace std;
int ls[MAXN],rs[MAXN],dml[MAXN],dmr[MAXN];
int rek(int lt,int rt)
{
	if(lt>rt) return -1;
	int l;
	for(int i=lt;i<=rt;i++) {if(dml[i]<=lt && dmr[i]>=rt)  l=i; break;}
	ls[l]=rek(lt,l-1);
	rs[l]=rek(l+1,rt);
	return l;
}
int solve(int N,int* Left,int* Right)
{
	stack<int> st;
	for(int i=0;i<N;i++)
	{
		while(!st.empty()) {if(!query(st.top(),st.top(),st.top(),i)) {dmr[st.top()]=i-1; st.pop();} else break;}
		if(!st.empty()) dml[i]=st.top()+1;
		else dml[i]=0;
		st.push(i);
	}
	return 0;
	while(!st.empty()) {dmr[st.top()]=N-1; st.pop();}
	int a=rek(0,N-1);
	for(int i=0;i<N;i++) Left[i]=ls[i];
	for(int i=0;i<N;i++) Right[i]=rs[i];
	return a;
}

Compilation message (stderr)

popa.cpp: In function 'int rek(int, int)':
popa.cpp:12:7: warning: 'l' may be used uninitialized in this function [-Wmaybe-uninitialized]
  rs[l]=rek(l+1,rt);
  ~~~~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...