답안 #499051

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
499051 2021-12-27T06:49:25 Z Abdurahmon Hedgehog Daniyar and Algorithms (IZhO19_sortbooks) C++14
0 / 100
1062 ms 92908 KB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int n,m;ll a[1000006],l[1000006],r[1000006],k[1000006],t[1000006];
vector<ll>as[1000006];
void add(int k,ll x)
{
	while(k>0)
	{
		t[k]=max(t[k],x);
		k-=k&-k;	
	}	
}
ll get(int k)
{
	ll s=0;
	while(k<=n)
	{
		s=max(s,t[k]);
		k+=k&-k;
	}
	return s;
}
int main()
{
ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
cin>>n>>m;
for(int c=1;c<=n;c++)
{
	cin>>a[c];
}
for(int c=1;c<=m;c++)
{
	cin>>l[c]>>r[c]>>k[c];as[r[c]].push_back(c);
}
vector<ll>s;
vector<bool>ans(m+1);
for(int c=1;c<=n;c++)
{
	while(s.size()&&a[s.back()]<=a[c])
	{
		s.pop_back();
	}
	ll x=(s.size()==0?0:s.back());
	add(x,a[x]+a[c]);
	for (auto i:as[c])
	{
		cout<<i<<" ";
		ans[i]=(get(l[i])<=k[i]);
	}
	cout<<"\n";
	s.push_back(c);
	
	  	
}
for(int c=1;c<=m;c++)
{
	cout<<ans[c]<<"\n";
}

}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 23756 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 23756 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1062 ms 92908 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 72 ms 30404 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 23756 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 23756 KB Output isn't correct
2 Halted 0 ms 0 KB -