AT_abc322_g [ABC322G] Two Kinds of Base
Description
[problemUrl]: https://atcoder.jp/contests/abc322/tasks/abc322_g
非負整数列 $ S=(S_1,S_2,\dots,S_k) $ と整数 $ a $ に対して、以下のように関数 $ f(S,a) $ を定義します。
- $ f(S,a)\ =\ \sum_{i=1}^{k}\ S_i\ \times\ a^{k\ -\ i} $
例えば、$ f((1,2,3),4)\ =\ 1\ \times\ 4^2\ +\ 2\ \times\ 4^1\ +\ 3\ \times\ 4^0\ =\ 27,f((1,1,1,1),10)\ =\ 1\ \times\ 10^3\ +\ 1\ \times\ 10^2\ +\ 1\ \times\ 10^1\ +\ 1\ \times\ 10^0\ =\ 1111 $ です。
正整数 $ N,X $ が与えられます。以下の条件を全て満たす非負整数列 $ S=(S_1,S_2,\dots,S_k) $ と正整数 $ a,b $ の組 $ (S,a,b) $ の個数を $ 998244353 $ で割ったあまりを求めてください。
- $ k\ \ge\ 1 $
- $ a,b\ \le\ N $
- $ S_1\ \neq\ 0 $
- $ S_i\
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ X $
Output Format
条件を満たす非負整数列 $ S $ と正整数 $ a,b $ の組 $ (S,a,b) $ の個数を $ 998244353 $ で割ったあまりを出力せよ。
Explanation/Hint
### 制約
- $ 1\ \le\ N\ \le\ 10^9 $
- $ 1\ \le\ X\ \le\ 2\ \times\ 10^5 $
- 入力は全て整数
### Sample Explanation 1
$ (S,a,b)=((1,0),4,2),((1,1),4,2),((2,0),4,3),((2,1),4,3),((2,2),4,3) $ の $ 5 $ 通りが条件を満たします。