結果
問題 |
No.3004 ヤング図形
|
ユーザー |
![]() |
提出日時 | 2025-01-18 02:54:14 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 3,474 ms / 4,000 ms |
コード長 | 611 bytes |
コンパイル時間 | 538 ms |
コンパイル使用メモリ | 82,736 KB |
実行使用メモリ | 71,168 KB |
最終ジャッジ日時 | 2025-01-18 02:55:04 |
合計ジャッジ時間 | 48,533 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
ソースコード
from collections import Counter K=int(input()) LM=[list(map(int,input().split())) for i in range(K)] mod=998244353 K=[] for l,m in LM: K.append(l*m) ANS=1 SUM=sum(K) PLUS=Counter() INV=Counter() PLUS[SUM]+=1 for i in range(len(K)): if SUM-K[i]>0: INV[K[i]]+=1 else: INV[SUM]+=1 SUM-=K[i] for l,m in LM: SUM=l*m PLUS[SUM]+=1 INV[l]+=m INV[m]+=1 f=1 ANS=1 for i in range(1,sum(K)+1): f=f*i%mod if i in PLUS: ANS=ANS*pow(f,PLUS[i],mod)%mod if i in INV: ANS=ANS*pow(pow(f,INV[i],mod),mod-2,mod)%mod print(ANS%mod)