問題一覧 > 通常問題

No.2356 Back Door Tour in Four Seasons

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 72
作問者 : 👑 AngrySadEight / テスター : hamamu kumakuma
2 ProblemId : 9405 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-06-17 00:10:57

問題文

yuki 国には NN 個の街があります.yuki 国では,街ごとに季節が異なっており,ii 番目の街の季節は SiS_i で表されます.SiS_iU ならばその街は夏,F ならば秋,W ならば冬,P ならば春であることを表します.

ii 番目の街には一方通行の扉AiA_i 個あり,扉をひとつ用いることで,yuki 国のほかの特定の一つの街にワープできます.

さて,最初にある街を 1 つ選んで訪れ,それ以降は今いる街にある扉のうちどれか一つを用いてワープすることを繰り返すことにより,合計で 4 つの街を訪れることを考えます.ここで,jj 番目 (j=1,2,3)(j =1,2,3) に訪れる街から j+1j+1 番目に訪れる街へは,ワープ 11 回で移動します.扉によるワープ以外の移動手段を用いることはできません.

このとき,訪れた 4 つの街の季節が,訪れた順に「夏→秋→冬→春」となるようにしたいです.

扉の行先の組合せは全部で (N1)Aall(N-1)^{A_{all}} 通りあります(AallA_{all} は扉の総数).それらすべてに対する,訪れた街の季節が「夏→秋→冬→春」になるような街の訪れ方の数の総和を 998244353998244353 で割った余りを求めてください.

なお,街の訪れ方は,ある j(1j4)j(1 \leq j \leq 4) が存在して,jj 番目に訪れる街が異なる場合に区別されます.すべての j(1j4)j(1 \leq j \leq 4) に対して,jj 番目に訪れる街が同じである街の訪れ方は,移動に用いる扉が異なっても区別されないことに注意してください.

制約

  • 2N3×1052 \leq N \leq 3 \times 10^5
  • SiS_iU, F, W, P のいずれかである.
  • 1Ai1051 \leq A_i \leq 10^5
  • N,AiN, A_i は整数である.

入力

入力は以下の形式で標準入力から与えられる.

NN
S1S_1 A1A_1
S2S_2 A2A_2
\cdots
SNS_N ANA_N

出力

答えを出力せよ.

サンプル

サンプル1
入力
4
U 1
F 1
W 1
P 1
出力
3

季節が夏,秋,冬,春の街が 1 つずつあり,そのそれぞれに扉が 11 個ずつあります.

夏の街にある扉の行先が秋の街,秋の街にある扉の行先が冬の街,冬の街にある扉の行先が春の街である場合に限り,条件を満たす街の訪れ方が 11 通りのみあります.

春の街にある扉の行先は,ほかの 33 つの街のどこでもよいです.これ以外の行先の組合せの場合は条件を満たす街の訪れ方は存在しないので,それらの総和を考えると答えは 33 です.

サンプル2
入力
4
U 3
F 1
W 1
P 1
出力
57

先程のケースに比べ,夏の街にある扉の数が 33 個に増えています.

なお,各扉の行先を固定した際に,訪れる 44 つの街が順序含め同じである街の訪れ方は,移動に用いる扉が異なっても区別されないことに注意してください.

サンプル3
入力
4
P 2017
U 8
F 11
W 16
出力
317248232

998244353998244353 で割った余りを出力してください.

サンプル4
入力
16
P 1
U 2
F 3
W 4
P 5
U 6
F 7
W 8
P 9
U 10
F 11
W 12
P 13
U 14
F 15
W 16
出力
958756683

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。