問題一覧 > 通常問題

No.2818 A Game I Play to Pass the Time

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 18
作問者 : highlighterhighlighter / テスター : hirayuu_ychirayuu_yc MagentorMagentor Yoyoyo8128Yoyoyo8128 warabi0906warabi0906 silv723silv723 fact493fact493 zeta7532zeta7532
1 ProblemId : 10878 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-07-19 21:26:07

ストーリー

必ずしもこの項を読む必要はない.

highlighter「暇だなぁ...暇すぎる... そうだ!あのゲームをしよう!」

???「次の問題はhighlighter君がいつも暇な時にやっている非常につまらない面白いゲームを基にしています.全完した人はぜひこのゲームで暇をつぶしましょう.」

問題文

$T$ 個のテストケースについて以下の問題を解いてください.

すべての要素が $0$ で初期化された長さ $S$ の整数列 $C$ があります.また,変数 $X$ があります.はじめ $X$ の値は $0$ に等しいものとします.

ここからhighlighter君は以下の一連の操作を好きな回数行います.

  • $1 \leq i \leq S$ を満たす正整数 $i$ を一つ選び, $C_{i}$ に $1$ を加算する.
  • $X$ に $\displaystyle\prod_{j \neq i} C_{j}$ を加算する.

操作終了時に $X=N$ であるとき,ありうる操作後の (21:25追記) すべての $C$ について, $\displaystyle\sum_{i=1}^{S} C_{i}$ の総和を求めてください.ただし答えは非常に大きくなりうるので $998244353$ で割った余りを出力してください.

制約

  • $1 \leq T \leq 2 \times 10^{5}$
  • 各ケースについて,
    • $N$ の素因数はすべて $100$ 以下
    • $1 \leq N \leq 10^{18}$
    • $2 \leq S \leq 10^{18}$
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる.ここで, $\mathrm{case}_{i}$ は $i$ 個目のケースを表す.

$T$
$\mathrm{case}_{1}$
$\mathrm{case}_{2}$
$\vdots$
$\mathrm{case}_{T}$

各ケースは以下の形式で与えられる.

$N~~~S$

出力

$T$ 行出力してください. $i$ 行目には $\mathrm{case}_{i}$ に対する答えを出力してください.

サンプル

サンプル1
入力
3
3 3
1 2
1 998244353
出力
15
2
0
  • ケース $1$ について, $5$ 回の操作を順に $i=1,i=3,i=3,i=2,i=3$ といったように行えば最終的に $X=3$ になります.
  • ケース $3$ について, $998244353$ で割った余りを出力することに注意してください.
  • 提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。