Submission #1229957

#TimeUsernameProblemLanguageResultExecution timeMemory
1229957Muhammad_Aneeqpopa (BOI18_popa)C++20
37 / 100
80 ms428 KiB
#include <iostream>
#include <algorithm>
#include <numeric>
#include "popa.h"
using namespace std;
int const MAXNN=1e3+10;
// int s[MAXN]={};
int lc[MAXNN],rc[MAXNN];
// bool query(int a,int b,int c,int d)
// {
// 	int g=0,g1=0;
// 	for (int i=a;i<=b;i++)
// 		g=gcd(g,s[i]);
// 	for (int i=c;i<=d;i++)
// 		g1=gcd(g1,s[i]);
// 	return (g==g1);
// }
int sol(int l,int r)
{
	if (l>r)
		return -1;
	if (l==r)
		return l;
	for (int i=l;i<r;i++)
	{
		if (query(l,r,i,i))
		{
			lc[i]=sol(l,i-1);
			rc[i]=sol(i+1,r);
			return i;
		}
	}
	lc[r]=sol(l,r-1);
	return r;
}
int solve(int N,int* left,int* right)
{
	for (int i=0;i<N;i++)
		lc[i]=rc[i]=-1;
	int rt=sol(0,N-1);
	for (int i=0;i<N;i++)
		left[i]=lc[i],right[i]=rc[i];
	return rt;
}
// int main()
// {
// 	int n;
// 	cin>>n;
// 	for (int i=0;i<n;i++)
// 		cin>>s[i];
// 	int l[n],r[n];
// 	cout<<solve(n,l,r)<<endl;
// 	for (int i=0;i<n;i++)
// 		cout<<l[i]<<' '<<r[i]<<endl;
// }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...