#815. 斐波那契矩形(fib)

斐波那契矩形(fib)

读写要求

本题采用文件读写,请在提交代码时使用正确的文件读写方式,否则会导致 RE

输入:fib.in

输出:fib.out

题目描述

女孩 Umka 喜欢旅行并参加数学奥林匹克。有一天,她乘飞机去参加下一场奥林匹克竞赛,出于无聊,她开始研究一张巨大的方格纸。

我们将第 nn 个斐波那契数记作 $F_n = \begin{cases} 1, & n = 0; \\ 1, & n = 1; \\ F_{n-2} + F_{n-1}, & n \ge 2. \end{cases}$。

一个高为 FnF_n、宽为 Fn+1F_{n+1} 的方格矩形被称为 nn 阶斐波那契矩形。

Umka 有一个 nn 阶斐波那契矩形。有人在该矩形中第 xx 行第 yy 列的交叉处涂黑了一个格子。

现在需要将这个矩形恰好切分成 n+1n+1 个正方形,要求满足:

  • 被涂黑的格子位于边长为 11 的正方形内;
  • 最多只有一对正方形的边长相等;
  • 每个正方形的边长都是某个斐波那契数。

Umka 能否按要求切分这个矩形?

输入格式

第一行包含一个整数 tt1t21051 \le t \le 2 \cdot 10^5),表示测试用例的数量。

每个测试用例包含三个整数 nnxxyy1n441 \le n \le 441xFn1 \le x \le F_n1yFn+11 \le y \le F_{n+1}),分别表示斐波那契矩形的阶数和被涂黑格子的坐标。

输出格式

对于每个测试用例,如果可以按要求切分,输出 "YES";否则输出 "NO"。

输入输出样例

12
1 1 1
2 1 2
3 1 4
3 3 2
4 4 6
4 3 3
5 6 5
5 4 12
5 2 12
4 2 1
1 1 2
44 758465880 1277583853
YES
NO
YES
YES
YES
NO
YES
NO
NO
YES
YES
NO

说明/提示

上图分别对应第一个、第三个和第四个测试用例。