K - Keep or Gamble Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MiB

配点 : 100 点

問題文

U + T + P + C 枚のカードがあり、このうち U 枚は表面にユニコーンの絵が、T 枚は表面にトラの絵が、P 枚は表面にパンダの絵が、C 枚は表面にネコの絵が描かれています。すべてのカードははじめ裏面を向けて置かれており、どのカードも表面に何の絵が描かれているかわからないようになっています。

あなたはこれらのカードを用いてゲームをします。ゲームはいくつかのターンからなり、あなたは各ターン、次の操作 A、操作 B のいずれかを選んで行います。

  • 操作 A: 裏面を向けているカードから等確率に 1 枚選び、表面を向ける。このとき、
    • 選んだカードの表面に描かれている絵がユニコーン、トラ、パンダのいずれかであれば、次のターンに移りゲームを続行する。選んだカードは表面を向けたままにする。
    • 選んだカードの表面に描かれている絵がネコであれば、ゲームを終了する。このとき、あなたの得点は 0 点となる。
  • 操作 B: ゲームを終了させる。このとき、表面を向けたカードのうちユニコーンが描かれているものの枚数を u、トラが描かれているものの枚数を t として、あなたの得点は 2u+t 点となる。

得点の期待値を最大化する戦略をとったときの得点の期待値を、\text{mod } 998244353 で求めてください。

期待値 \text{mod } 998244353 の定義 この問題で求める期待値は必ず有理数になることが証明できます。 また、この問題の制約下では、求める期待値を既約分数 \frac{y}{x} で表したときに x が 998244353 で割り切れないことが保証されます。 このとき、y \equiv xz \pmod{998244353} を満たす 0 \leq z < 998244353 がただ一つ存在するので、z を出力してください。

制約

  • 入力は全て整数
  • 1 \leq U, T, P, C \leq 10^6

入力

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

U T P C

出力

答えを 1 行に出力せよ。


入力例 1

1 1 1 1

出力例 1

166374060

ゲーム進行の一例を示します。必ずしも最適な戦略とは限りません。

1 ターン目に操作 B を行えば得点は 0 点となりゲームが終了します。ここでは操作 A を行い、選んだカードの表面にユニコーンが描かれていたとします。

この状態で 2 ターン目に操作 B を行えば得点は 2 点となりゲームが終了します。ここでは操作 A を行い、選んだカードの表面にパンダが描かれていたとします。

この状態で 3 ターン目に操作 B を行えば得点は 2 点となりゲームが終了します。ここでは操作 A を行い、選んだカードの表面にネコが描かれていたとします。ネコが描かれているカードを表向きにしたので、得点は 0 点となりゲームが終了します。

最適な戦略をとった場合、得点の期待値は \frac{7}{6} になることが示せます。


入力例 2

2 7 1 8

出力例 2

300941313

入力例 3

20 26 2 14

出力例 3

631490021