小苯的方格覆盖
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 1024 M,其他语言2048 M
64bit IO Format: %lld

题目描述

\hspace{15pt}猪猪王图拨号图片最近迷上了华容道游戏,这天他找到了他的部下撤云猪猪图片并给了他一个 3n 列的矩阵。
\hspace{15pt}图拨号希望撤云猪猪用一种 1\times 2 的小方格(可以旋转 90 度,即覆盖两个在同一行或同一列上相邻的格子)恰好填满这个矩阵,不能有空位,小方格之间也不能重叠。
\hspace{15pt}但撤云猪猪整日忙于旅行无暇回答这个问题,因此请你来帮助撤云猪猪吧。你只需要帮撤云猪猪判断是否可以用 1\times 2 的小方格填满这个 3n 列的矩阵即可。

\hspace{15pt}注意:1 \times 2 的小方格可以旋转 90 度,变成 2 \times 1 的小方格。

输入描述:

\hspace{15pt}在一行上输入一个正整数 n\left(1 \leqq n \leqq 20\right),表示猪猪王给出的矩阵的列数。

输出描述:

\hspace{15pt}如果可以填满且符合要求,直接输出 \texttt{YES},否则输出 \texttt{NO}
示例1

输入

复制
2

输出

复制
YES

说明

\hspace{15pt}在这个数据中,一种合法的放置方式如图所示,可以恰好填满矩阵而不产生重叠(其中相同的颜色表示同一块小方格)。


示例2

输入

复制
3

输出

复制
NO

说明

\hspace{15pt}在这个数据中,可以证明是不存在合法解的。下图展示了一种不合法的放置方案(右下角的格子并没有被某个小方格填到)。

备注: