Codeforces Round 273 (Div. 2)
D
Red-Green Towers
Codeforces
2000
原题
← CE →
翻译中…

There are $*r*$ red and $*g*$ green blocks for construction of the red-green tower. Red-green tower can be built following next rules:

翻译中…
  • Red-green tower is consisting of some number of levels;
  • Let the red-green tower consist of $*n*$ levels, then the first level of this tower should consist of $*n*$ blocks, second level — of $*n* - 1$ blocks, the third one — of $*n* - 2$ blocks, and so on — the last level of such tower should consist of the one block. In other words, each successive level should contain one block less than the previous one;
  • Each level of the red-green tower should contain blocks of the same color.
翻译中…

image

翻译中…

Let $*h*$ be the maximum possible number of levels of red-green tower, that can be built out of $*r*$ red and $*g*$ green blocks meeting the rules above. The task is to determine how many different red-green towers having $*h*$ levels can be built out of the available blocks.

翻译中…

Two red-green towers are considered different if there exists some level, that consists of red blocks in the one tower and consists of green blocks in the other tower.

翻译中…

You are to write a program that will find the number of different red-green towers of height $*h*$ modulo $10^{9} + 7$.

翻译中…

Input

翻译中…

The only line of input contains two integers $*r*$ and $*g*$, separated by a single space — the number of available red and green blocks respectively ($0 ≤ *r*, *g* ≤ 2·10^{5}$, $*r* + *g* ≥ 1$).

翻译中…

Output

翻译中…

Output the only integer — the number of different possible red-green towers of height $*h*$ modulo $10^{9} + 7$.

翻译中…

Note

翻译中…

The image in the problem statement shows all possible red-green towers for the first sample.

翻译中…

样例

Input #1
4 6
Output #1
2
InputCopy OutputCopy
Input #2
9 7
Output #2
6
InputCopy OutputCopy
Input #3
1 1
Output #3
2
InputCopy OutputCopy
题目信息
题号
478D
时间限制
2 s
内存限制
256 MB
标签
动态规划

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。