#3011. 书籍排序

书籍排序

说明

李老师上完课后,遗落了N本书在教室,书的第一页上有李老师标好的1, 2, 3, ... , N等数字标号。他需要按照1, 2, 3, ... , N的顺序把书从下往上排列起来,于是就请来一个学生帮他把书从教室带到办公室。但是学生力气比较小,一次只能拿一本书,学生很调皮,每次都会随机挑一本书给老师。

如果学生拿书的顺序比较好,那么老师可以比较顺利地将书按照顺序排列起来。例如老师要按顺序从下往上排列5本书,学生依次将书以1,3,2,5,4 这个顺序拿给老师,则老师拿到1时可以直接排序;拿到3时又得临时放在一边;拿到2时可以直接排序;随后从边上拿3进行排序;然后拿到 5,临时又放在一边;最后取了4直接排序;剩下的工作就是从边上拿取5依次排序。

但如果学生按照3,1,5,4,2这个顺序拿去书,李老师就必须要重复地折腾搁置在书桌边上的书了,因为排序完2以后,不把书桌边的其他书拿开就拿不到3,李老师就不能顺利完成排序。

另外,书桌的承重有限,如果搁置在书桌边等待排序的书超过一定数量,李老师也没办法顺利完成所有书籍的排序。例如学生按照5,4,3,2,1这个顺序拿书,如果书桌边能承重4本书,那还是可以顺利完工的;但如果书桌边只能承重3本书,老师就没办法排序成功了……

现在给定学生拿书的顺序,判断老师能不能排序成功。

输入格式

输入首先在第一行给出 3 个正整数,分别是书的数量N、老师书桌边的承重M,和要判断的学生拿书的顺序组数K

随后K行,每行给出以空格隔开的N个数字,是1N的以一个排列,对应学生的拿书顺序。

输出格式

对每个拿书顺序,如果老师可以成功排序,就在一行中输出 YES;否则输出 NO

样例

3 1 3
1 2 3
3 2 1
3 1 2
YES
NO
YES

提示

数据范围

  • 对于30%的数据N<= 8

  • 对于30%的数据K=1

  • 对于100%的数据1 <= M < N <= 1000, k <=1000