atcoder#ABC205E. [ABC205E] White and Black Balls

[ABC205E] White and Black Balls

配点 : 500500

問題文

白いボール NN 個と黒いボール MM 個を横一列に並べる方法であって、次の条件を満たすものは何通りありますか?

  • i(1iN+M)i \, (1 \leq i \leq N + M) について左から ii 個のボールのうち白いものの個数を wiw_i、黒いものの個数を bib_i とおいたとき、全ての ii について wibi+Kw_i \leq b_i + K が成り立つ。

ただし、答えは非常に大きくなることがあるので、(109+7)(10^9 + 7) で割ったあまりを求めてください。

制約

  • 0N,M1060 \leq N, M \leq 10^6
  • 1N+M1 \leq N + M
  • 0KN0 \leq K \leq N
  • 入力は全て整数である。

入力

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

NN MM KK

出力

答えを出力せよ。(109+7)(10^9 + 7) で割ったあまりを求めることに注意すること。

2 3 1
9

白いボール 22 個と黒いボール 33 個を並べる方法は 1010 通りあり、白いボールを w、黒いボールを b で表すと以下のようになります。

wwbbb wbwbb wbbwb wbbbw bwwbb bwbwb bwbbw bbwwb bbwbw bbbww

このうち、条件を満たさないのは wwbbb のみです。左から 22 個のボールのうち白いものは 22 個、黒いものは 00 個ありますが、2>0+K=12 > 0 + K = 1 となっています。

1 0 0
0

条件を満たす並べ方が存在しないこともあります。

1000000 1000000 1000000
192151600

(109+7)(10^9 + 7) で割ったあまりを出力することに注意してください。