CF478D.Red-Green Towers
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
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.

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 109 + 7.
有 r 个红色方块和 g 个绿色方块,用于构建红-绿塔。红-绿塔需遵循以下规则构建:
-
红-绿塔由若干层组成;
-
设红-绿塔共有 n 层,则第一层应包含 n 个方块,第二层应包含 n−1 个方块,第三层应包含 n−2 个方块,依此类推——该塔最顶层(即第 n 层)应仅包含 1 个方块。换言之,每一层比其上一层(即更靠近塔顶的一层)多一个方块,或者说,每一层比其下一层(即更靠近塔底的一层)少一个方块;
-
红-绿塔的每一层必须全部由同一种颜色的方块构成。

设 h 为使用给定的 r 个红色方块和 g 个绿色方块、在满足上述规则的前提下所能构建的红-绿塔的最大可能层数。本题要求计算:利用现有方块,可构建多少种互不相同的、层数恰好为 h 的红-绿塔。
若存在某一层,在一座塔中由红色方块构成,而在另一座塔中由绿色方块构成,则称这两座红-绿塔互不相同。
你需要编写一个程序,计算层数为 h 的不同红-绿塔的总数,并对 109+7 取模。
输入格式
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·105, r + g ≥ 1).
输入仅有一行,包含两个整数 r 和 g,以单个空格分隔——分别表示可用的红色方块和绿色方块的数量(0 ≤ r, g ≤ 2⋅105,且 r + g ≥ 1)。
输出格式
Output the only integer — the number of different possible red-green towers of height h modulo 109 + 7.
输出唯一的整数——高度为 h 的不同红绿色塔的数目,对 109+7 取模。
输入输出样例
输入#1
4 6
输出#1
2
输入#2
9 7
输出#2
6
输入#3
1 1
输出#3
2
说明/提示
The image in the problem statement shows all possible red-green towers for the first sample.
题目描述中的图片展示了第一个样例中所有可能的红-绿塔。
输入解题思路,AI测评打分。不知道怎么写?