No.2452 Incline
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 72
作問者 : srjywrdnprkt / テスター : 👑 p-adic
タグ : / 解いたユーザー数 72
作問者 : srjywrdnprkt / テスター : 👑 p-adic
問題文最終更新日: 2023-09-02 00:07:47
問題文
以下の条件を全て満たす長さ $N$ の等差数列 $A=(A_1, \cdots, A_N)$ の総数を $998244353$ で割った余りを求めてください。
- $1\leq i\leq N-1$ を満たすすべての整数 $i$ に対して、$A_i$ は $0$ 以上 $M$ 以下の整数
- $A_N$ は $L$ 以上 $R$ 以下の整数
入力
$T$ $case_1$ $\vdots$ $case_T$ここで、$case_i$ とは $i$ 個目のテストケースである。各テストケースは以下の形式で与えられる。
$N\ M\ L\ R$
入力は全て整数で以下の制約を満たす。
- $1\leq T\leq 10^5$
- $2\leq N \leq 10^{18}$
- $0\leq M \leq 10^{18}$
- $0\leq L \leq R \leq M$
出力
$T$ 行出力してください。$i$ 行目には $i$ 番目のテストケースに対する答えを出力してください。最後に改行してください。
サンプル
サンプル1
入力
3 3 5 2 3 2 1000000000000000000 0 1000000000000000000 1000000000000000000 0 0 0
出力
6 866938593 1
1つ目のテストケースについて、$(0, 1, 2), (1, 2, 3), (2, 2, 2), (3, 3, 3), (4, 3, 2), (5, 4, 3)$ の $6$ つが条件を満たします。
2つ目のテストケースについて、条件を満たす等差数列は $1000000000000000002000000000000000001$ 個あります。 これを $998244353$ で割った余りである $866938593$ が答えです。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。