#2336. 希蒙的L形方块

希蒙的L形方块

希蒙的L形方块

题目背景

希蒙最近训练的太多了,于是他打算玩点益智游戏休息一下。

题目描述

给定一个n×nn\times n的网格与一个禁止点,你需要研究能否用"L"形的方块将整个网格填充(除了禁止点),如果不能请输出“NO",否则输出”YES“,并且输出方案。

如果有多种方案,输出任意一种即可。

我们用44个变量唯一确定一个"L"形方块:

r,c,h,wr,c,h,w,其中r,cr,c表示"L"形方块的拐点坐标,h,wh,w表示其水平与垂直延伸的长度与方向,具体解释见下。

输入格式

第一行共三个整数n,bi,bjn,b_i,b_j,表示网格大小与禁止点的坐标。

输出格式

如果不存在方案,输出“NO”,然后结束。

否则输出“YES”。

第二行输出需要的“L”形方块数量kk

接下来kk行,每行四个整数ri,ci,hi,wir_i,c_i,h_i,w_i,含义见上,其中hi,wi0h_i,w_i\not=0

样例 #1

样例输入 #1

5 3 4

样例输出 #1

YES
6
5 1 -1 3
1 2 1 3
3 1 -2 1
4 3 -1 -1
4 5 1 -1
2 5 1 -2

样例 #2

样例输入 #2

1 1 1

样例输出 #2

YES
0

提示

数据范围:

对于100%的数据,我们保证1<=n<=103,1<=bi,bj<=n1<=n<=10^3,1<=b_i,b_j<=n

样例解释:

样例一如图: image

温馨提示:

本题采用SPJ,输出任意合法方案即可。