七巧板入门(思维场)

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 4 总提交人数: 6

题目描述

开花学长想玩七巧板,但是他的手太笨了,所以只能从最基础的玩起(大概也就是两三岁的水平吧)。

现在他的手上有 $n$ 个大小一样的等腰直角三角形,如下图所示

12.jpg

他现在希望能够使用这 $n$ 个等腰直角三角形的板子,拼成一个正方形。具体规则如下:

  • 所有的板子可以以任意角度旋转,或者移动他所在的位置
  • 所有的板子不可以重叠或者被覆盖,只可以相邻地进行拼接。
  • 拼成的正方形内部不可以存在空出来的区域,即必须拼成一个实心的正方形
  • $n$ 个板子必须全部用上才行

开花学长希望你帮他看看,用 $n$ 个等腰直角三角形板子能否按照上述规则拼成正方形。

输入

本题的每一个测试点均为多组输入

第一个数为数据组数 $t$ $(1\le t\le 10000)$

接下来 $t$ 行,每行 $1$ 个整数 $n$ $(1\le n \le 10^{9})$,表示拥有的等腰直角三角形板子的个数。

输出

对于每组数据,输出一行,如果可以按照上述规则拼成正方形,则输出一行"YES",不可以则输出"NO"。(两者均不需要输出双引号)

输入样例

6
1
2
3
4
5
6

输出样例

NO
YES
NO
YES
NO
NO

样例解释

$n=2$ 的时候可以拼成这个样子:

13.jpg

$n=4$ 的时候可以拼成这个样子:

14.jpg

不难看出,剩下的几组情况无论如何都拼不出想要的正方形。

顺便,如果觉得自己推的没问题但是不知道哪里错了的话,可以看看看看,下图这个是不是正方形呢?

15.jpg

相关推荐