제출 #1040340

#제출 시각아이디문제언어결과실행 시간메모리
1040340vjudge1Hedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
17 / 100
273 ms43708 KiB
#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1000006],rmx[30][1000006],vt[30][1000006];
//void buildd()
//{
//	for(int i=1;i<=n;i++)
//	{
//		rmx[0][i]=a[i];
//		vt[0][i]=i;
//	}
//	for(int i=1;i<=21;i++)
//	{
//		for(int j=1;j<=n-(1<<i)+1;j++)
//		{
//			if(rmx[i-1][j]>=rmx[i-1][j+(1<<(i-1))])
//			{
//				rmx[i][j]=rmx[i-1][j];
//				vt[i][j]=vt[i-1][j];
//			}
//			else
//			{
//				rmx[i][j]=rmx[i-1][j+(1<<(i-1))];
//				vt[i][j]=vt[i-1][j+(1<<(i-1))];
//			}
//		}
//	}
//}
//pair<int,int> getmx(long long l,long long r)
//{
//	long long k=__lg(r-l+1);
//	if(rmx[k][l]>=rmx[k][r-(1<<k)+1])
//	{
//		return {rmx[k][l],vt[k][l]};
//	}
//	else return {rmx[k][r-(1<<k)+1],vt[k][r-(1<<k)+1]};
//}
//long long get(long long l,long long r,long long w)
//{
//	if(l==r)
//	{
//		if(a[l]<w) return a[l];
//		else return -1;
//	}
//	pair<int,int> p=getmx(l,r);
//	if(p.first<w) return p.first;
//	long long mid=(l+r)/2;
//	return max(get(l,mid,w),get(mid+1,r,w));
//}
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);cout.tie(0);
//	freopen(".inp","r",stdin);
//	freopen(".out","w",stdout);
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
//	buildd();
	if(m<=5000)
	while(m--)
	{
		long long l,r,k;
		cin>>l>>r>>k;
		long long mx=a[l],res=0;
		for(int i=l+1;i<=r;i++)
		{
			if(a[i]>=mx)
			{
				mx=a[i];
			}
			else
			{
				res=max(res,mx+a[i]);
			}
		}
		if(res<=k) cout<<1<<"\n";
		else cout<<0<<"\n";
	}
	else
	{
		while(m--)
		{
			long long l,r,k;
			cin>>l>>r>>k;
			cout<<0<<"\n";
		}
	}
	return 0;
}
#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...