H - Symmetric
Editorial
/
Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 400 点
問題文
整数 s,t,u が与えられます。
ここで、 \alpha,\beta,\gamma は以下の条件を満たす複素数です。
- \alpha+\beta+\gamma=s
- \alpha\beta+\beta\gamma+\gamma\alpha=t
- \alpha\beta\gamma=u
- \alpha,\beta,\gamma は相異なる。
このとき、正の整数 n,m が与えられるので、
\dfrac{\alpha^n(\beta^m-\gamma^m)+\beta^n(\gamma^m-\alpha^m)+\gamma^n(\alpha^m-\beta^m)}{(\alpha-\beta)(\beta-\gamma)(\gamma-\alpha)}
を求めてください。ただし答えは有理数であることが保証されるので、 \mod 998244353 で出力してください。
注記
有理数を出力する際には、まずその有理数を分数 \dfrac{y}{x} として表してください。ここで、 x,y は整数であり、 x は 998244353 で割り切れてはなりません(この問題の制約下で、そのような表現は必ず可能です)。そして、 xz\equiv y\pmod{ 998244353}を満たすような 0 以上 998244352 以下の唯一の整数 z を出力してください。
制約
- 1 \leq n \leq 10^{18}
- 1 \leq m \leq 10^{18}
- 0 \leq s \lt 998244353
- 0 \leq t \lt 998244353
- 0 \leq u \lt 998244353
- \alpha,\beta,\gamma は相異なる。
- 入力はすべて整数で与えられる。
入力
入力は以下の形式で標準入力から与えられる。
n m s t u
出力
答えを1行で出力せよ。
入力例1
2 3 314 159 265
出力例1
159
入力例2
1000000000000000000 800000000000000000 6 11 6
出力例2
76083766
入力例3
1000000000000000000 500000000000000000 505459328 165146837 982639180
出力例3
228155372