結果

問題 No.1328 alligachi-problem
ユーザー tailstails
提出日時 2020-12-25 01:03:26
言語 cLay
(20241019-1)
結果
AC  
実行時間 42 ms / 2,000 ms
コード長 736 bytes
コンパイル時間 2,338 ms
コンパイル使用メモリ 179,504 KB
実行使用メモリ 7,936 KB
最終ジャッジ日時 2024-07-05 14:53:36
合計ジャッジ時間 7,987 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 25
権限があれば一括ダウンロードができます

ソースコード

diff #

struct S {
	int y,i;
};
bool operator<(S const&a, S const&b){
	return a.y<b.y;
}

S es[4][2d5];
int en[4],er[4],lr,lb;
int aa[2d5];

{
	int @n;
	rep(i,n){
		string @c,@x;
		int @y;
		int k=(c=="R"?0:2)|(x=="R"?0:1);
		es[k][en[k]++]={y,i};
	}
	rep(k,4){
		sort(es[k],es[k]+en[k]);
	}
	rep(i,n){
		int a0=(er[0]<en[0]&&es[0][er[0]].y==lr);
		int a1=(er[1]<en[1]&&es[1][er[1]].y==lb);
		int a2=(er[2]<en[2]&&es[2][er[2]].y==lr);
		int a3=(er[3]<en[3]&&es[3][er[3]].y==lb);
		int a=(a0?1:0)|(a1?2:0)|(a2?4:0)|(a3?8:0);
		if(a0) a&=~2;
		if(a1) a&=~4&~8;
		if(a2) a&=~1&~2;
		if(a3) a&=~4;
		int k=a&1?0:a&2?1:a&4?2:a&8?3:-1;
		if(k<0){
			wt("No");
			exit(0);
		}
		aa[i]=es[k][er[k]++].i+1;
		++(k<2?lr:lb);
	}
	wt("Yes");
	wt(aa(n));
}
0