結果

問題 No.2345 max(l,r)
ユーザー tails
提出日時 2023-06-10 21:07:08
言語 cLay
(20241019-1)
結果
AC  
実行時間 21 ms / 2,000 ms
コード長 451 bytes
コンパイル時間 5,936 ms
コンパイル使用メモリ 197,040 KB
実行使用メモリ 10,948 KB
最終ジャッジ日時 2025-01-03 02:01:41
合計ジャッジ時間 10,306 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 68
権限があれば一括ダウンロードができます

ソースコード

diff #

#define MD 998244353
Comb<Mint>c;
ll@T;
rep(T){
	ll@n,@m,a[n]{};
	rep(n){
		ll@t;
		++a[t];
	}
	ll l=0,r=0,v=0,z=n;
	Mint y=1;
	rrep(t,n){
		if(ll k=a[t]){
			z-=k;
			if(z+r==t&&l<=t){
				if(l==r&&z){
					y*=2;
				}
				l+=k;
				v++;
			}
			else if(z+l==t&&r<=t){
				r+=k;
				v++;
			}
			else if((l+r+k&1)==0 && (l+r+k>>1)+z==t){
				y*=c.C(k,(l+r+k)/2-l);
				l=(l+r+k)/2,r=l;
				v+=2;
			}
			else{
				y=0;
			}
		}
	}
	wt(y*c.C(m,v));
}
0