atcoder#ABC147F. [ABC147F] Sum Difference

[ABC147F] Sum Difference

配点 : 600600

問題文

長さ NN の整数列 AA があり、A1=X,Ai+1=Ai+D(1i<N)A_1 = X, A_{i+1} = A_i + D (1 \leq i < N ) が成り立っています。

高橋君はこの整数列の要素をいくつか選んで取り、残り全てを青木君が取ります。22 人のどちらかが全てを取ることになっても構いません。

高橋君の取った数の和を SS, 青木君の取った数の和を TT としたとき、STS - T として考えられる値は何通りあるでしょうか。

制約

  • 108X,D108-10^8 \leq X, D \leq 10^8
  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 入力は全て整数である

入力

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

NN XX DD

出力

STS - T として考えられる値の種類数を出力せよ。

3 4 2
8

AA(4,6,8)(4, 6, 8) です。

(高橋君, 青木君) の取り方は、 $((), (4, 6, 8)), ((4), (6, 8)), ((6), (4, 8)), ((8), (4, 6))), ((4, 6), (8))), ((4, 8), (6))), ((6, 8), (4))), ((4, 6, 8), ())$

88 通りあります。

STS - T はそれぞれ 18,10,6,2,2,6,10,18-18, -10, -6, -2, 2, 6, 10, 18 であるので、値の種類数は 88 です。

2 3 -3
2

AA(3,0)(3, 0) であり、STS - T として考えられる値は 3,3-3, 3 で、種類数は 22 です。

100 14 20
49805