测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A7562. [ABC145D] Knight

编程题 普及/提高-
知识点

题目描述

在二维网格的原点 $(0,0)$ 上有一个国际象棋中的马(Knight)棋子。

当马棋子位于格子 $(i,j)$ 时,只能移动到 $(i+1,j+2)$ 或 $(i+2,j+1)$ 这两个格子中的一个。

有多少种方法可以将马棋子移动到格子 $(X,Y)$?

请输出答案对 $10^9+7$ 取模后的结果。

输入格式

输入以以下格式从标准输入中给出。

> $X$ $Y$

输出格式

输出从 $(0,0)$ 移动到 $(X,Y)$ 的方法数,对 $10^9+7$ 取模后的结果。

输入输出样例

输入 #1
3 3
输出 #1
2
输入 #2
2 2
输出 #2
0
输入 #3
999999 999999
输出 #3
151840682

说明/提示

## 限制条件

- $1 \leq X \leq 10^6$
- $1 \leq Y \leq 10^6$
- 输入中的所有值均为整数。

## 样例解释 1

可以有两种方式:$(0,0) \to (1,2) \to (3,3)$ 和 $(0,0) \to (2,1) \to (3,3)$。

## 样例解释 2

无法将马棋子移动到 $(2,2)$。

## 样例解释 3

请输出方法数对 $10^9+7$ 取模后的结果。
上一题 去做题 下一题