結果

問題 No.1675 Strange Minimum Query
ユーザー tailstails
提出日時 2021-09-10 23:18:53
言語 cLay
(20241019-1)
結果
AC  
実行時間 53 ms / 2,000 ms
コード長 572 bytes
コンパイル時間 5,768 ms
コンパイル使用メモリ 212,780 KB
実行使用メモリ 13,312 KB
最終ジャッジ日時 2024-07-05 15:27:46
合計ジャッジ時間 10,823 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 34
権限があれば一括ダウンロードができます

ソースコード

diff #

using P=pair<ll,pair<ll,ll>>;
P a[2d5];
ll s[2d5];
ll z[2d5];
{
	ll@n,@q;
	rep(i,q){
		ll@l,@r,@b;
		a[i]={-b,{r,l-1}};
	}
	sortA(q,a);
	ll fb=0,fi=0;
	rep(i,q){
		ll b=-a[i].first;
		ll l=a[i].second.second;
		ll r=a[i].second.first;
		ll f=(fb==b&&fi>=l);
		while(1){
			ll t=l;
			while(t<r&&s[t]){
				t=s[t];
			}
			while(l!=t){
				(s[l],l)=(t,s[l]);
			}
			if(l>=r){
				break;
			}
			f=1;
			s[l]=l+1;
			z[l]=b;
			if(!(fb==b&&fi>=l)){
				fb=b;
				fi=l;
			}
		}
		if(!f){
			wt(-1);
			exit(0);
		}
	}
	rep(i,n){
		if(!z[i]){
			z[i]=1;
		}
	}
	wt(z(n));
}
0