結果
問題 | No.2568 列辞書順列列 |
ユーザー |
|
提出日時 | 2023-12-02 16:31:18 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 441 ms / 3,000 ms |
コード長 | 815 bytes |
コンパイル時間 | 433 ms |
コンパイル使用メモリ | 81,972 KB |
実行使用メモリ | 106,760 KB |
最終ジャッジ日時 | 2024-09-26 20:23:39 |
合計ジャッジ時間 | 12,339 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 25 |
ソースコード
class Input_kyopro: def II(self): return int(input()) def MI(self): return map(int,input().split()) def MS(self): return map(str,input().split()) def LMI(self): return list(self.MI()) def LMS(self): return list(self.MS()) def LLI(self,N): return [self.LMI() for _ in range(N)] def LLS(self,N): return [self.LMS() for _ in range(N)] def LS(self,N): return [input() for _ in range(N)] def LSL(self,N): return [list(input()) for _ in range(N)] def LI(self,N): return [self.II() for _ in range(N)] I=Input_kyopro() #入力 N,M,Q=I.MI() A=I.LMI() lr=I.LLI(Q) Mod=998244353 for i in range(N): A[i]=(A[i]-1)*pow(M,N-1-i,Mod) A[i]%=Mod for i in range(1,N): A[i]+=A[i-1] A=[0]+A for l,r in lr: ans=(A[r]-A[l-1])*pow(M,-(N-r),Mod) ans+=1 ans%=Mod print(ans)