NOIP2019提高组模拟--奇怪的队列

NOIP模拟–奇怪的队列

NOIP2019提高组模拟--奇怪的队列_第1张图片
NOIP2019提高组模拟--奇怪的队列_第2张图片
此题采用线段树的做法

#include
using namespace std;
struct nzy{
	int h;
	int num;
}a[100005];
struct oo{
	int l,r;
	int data;
}t[4*100005];
int store[100005];
bool cmp(nzy a,nzy b){
	return a.h>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].h;
		cin>>a[i].num;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n;i++){
		if(a[i].num>n-i){
			printf("impossible");
			return 0;
		}
	}
	build(1,1,n);
	for(int i=1;i<=n;i++){
		ans(1,min(a[i].num,n-a[i].num-i),a[i].h);
	}
	for(int i=1;i<=n;i++){
		printf("%d",store[i]);
		if(i!=n)
		putchar(' ');
	}
	return 0;
}

你可能感兴趣的:(提高组)