P9567 [SDCPC 2023] Puzzle: Sashigane

Description

Given a grid with $n$ rows and $n$ columns, there is exactly one black cell in the grid and all other cells are white. Let $(i, j)$ be the cell on the $i$-th row and the $j$-th column, this black cell is located at $(b_i, b_j)$. You need to cover all white cells with some L-shapes, so that each white cell is covered by exactly one L-shape and the only black cell is not covered by any L-shape. L-shapes must not exceed the boundary of the grid. More formally, an L-shape in the grid is uniquely determined by four integers $(r, c, h, w)$, where $(r, c)$ determines the turning point of the L-shape, and $h$ and $w$ determine the direction and lengths of the two arms of the L-shape. The four integers must satisfy $1 \le r, c \le n$, $1 \le r + h \le n$, $1 \le c + w \le n$, $h \ne 0$, $w \ne 0$. - If $h < 0$, then all cells $(i, c)$ satisfying $r + h \le i \le r$ belong to this L-shape; Otherwise if $h > 0$, all cells $(i, c)$ satisfying $r \le i \le r + h$ belong to this L-shape. - If $w < 0$, then all cells $(r, j)$ satisfying $c + w \le j \le c$ belong to this L-shape; Otherwise if $w > 0$, all cells $(r, j)$ satisfying $c \le j \le c + w$ belong to this L-shape. The following image illustrates some L-shapes. ![](https://cdn.luogu.com.cn/upload/image_hosting/s4jgji61.png)

Input Format

There is only one test case in each test file. The first line contains three integers $n$, $b_i$ and $b_j$ ($1 \le n \le 10^3$, $1 \le b_i, b_j \le n$) indicating the size of the grid and the position of the black cell.

Output Format

If a valid answer exists first output `Yes` in the first line, then in the second line output an integer $k$ ($0 \leq k \leq \frac{n^2-1}{3}$) indicating the number of L-shapes to cover white cells. Then output $k$ lines where the $i$-th line contains four integers $r_i$, $c_i$, $h_i$, $w_i$ separated by a space indicating that the $i$-th L-shape is uniquely determined by $(r_i, c_i, h_i, w_i)$. If there are multiple valid answers you can print any of them. If there is no valid answer, just output `No` in one line.

Explanation/Hint

We illustrate the first sample test case as follows. ![](https://cdn.luogu.com.cn/upload/image_hosting/nbrr3gun.png)