結果

問題 No.2428 Returning Shuffle
ユーザー tails
提出日時 2023-08-18 22:07:40
言語 cLay
(20241019-1)
結果
AC  
実行時間 117 ms / 2,000 ms
コード長 384 bytes
コンパイル時間 9,108 ms
コンパイル使用メモリ 227,860 KB
実行使用メモリ 18,944 KB
最終ジャッジ日時 2024-11-28 07:23:13
合計ジャッジ時間 11,245 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます

ソースコード

diff #

#define MD 998244353
ll@n++,@m;
ll p[n];
rep(i,n)p[i]=i;
rep(m){
	ll@t,@a,o=p[a];
	rep(t-1){
		ll@b;
		(o,p[b])=(p[b],o);
	}
	p[a]=o;
}
map<ll,ll>y;
rep(i,n){
	if(p[i]>=0&&p[i]!=i){
		ll j=i,a=0;
		while(p[j]>=0){
			(p[j],j)=(-1,p[j]);
			++a;
		}
		ll u[1d5],v[1d5];
		REP(k,Factor(a,u,v)){
			y[u[k]]>?=v[k];
		}
	}
}
Mint z=1;
for(auto w:y){
	z*=Mint(w.first)**w.second;
}
wt(z);
0