CF724B Batch Sort
题目描述
现在给你一个 **_n_** 行 **_m_** 列的数字矩阵,每一行的元素是一个1到m的全排列。
你可以在每一行中选取两个元素并交换它们,但是每一行这样的操作不能超过一次。
同样的,你可以选择两列并交换它们,这样的操作不能超过1次。
显而易见的,你一共可以进行 **_0_** 到 **_n+1_** 次这样的操作。而且操作顺序可以任意。
现在给你的任务是判断能否在进行一系列操作后使得每一行的数字从小到大排列,即 **_1_** 到 **_m_** 。换句话说,就是能否按照给出的规则进行操作使每一行单调递增。
输入格式
第一行两个正整数 **_n_** 和 **_m_** ( **_1
输出格式
如果有方法可以在规则约束下达成目标,则输出"**YES**"(不包含引号),否则输出"**NO**"(不包含引号)。
说明/提示
In the first sample, one can act in the following way:
1. Swap second and third columns. Now the table is $ 1 2 3 4 $ $ 1 4 3 2 $
2. In the second row, swap the second and the fourth elements. Now the table is $ 1 2 3 4 $ $ 1 2 3 4 $