国王分土地问题
【问题描述】小人国的国王要给他的骑士划分领地,因为他的数学不是很好,只会计算正方形的面积,所以他赏赐的领地一定要是正方形的,而且每块领地上一定只有一个骑士居住。因此如果在一个L•L的正方形领地中有n个骑士的家,问是否有一种切割方法把领地切成n个小正方形,满足每个小正方形里面恰好有1个骑士的家。 左边图为5×5的正方型领地,最小正方形为1×1(即一个方格),右图中为一种可行的切割方法。图中*表示骑士所在领地的位置。
在一个L•L的正方形领地里面有n个骑士的家,现在小人国的国王想请你帮忙测试一下是否有一种切割方法把他要赏赐的领地切成n个小正方形,满足每个小正方形里面恰好有1个骑士居住。 左边图为5×5的正方型领地,最小正方形为1×1(即一个方格),右图中为一种可行的切割方法。图中*表示枣骑士所居住的位置。
【输入】
输入的第一行为两个整数L(0<L<20)、N(N>0),分别表示L×L正方型领地及领地中骑士的个数。注意假定一个最小方格里最多只能放一个骑士。接下来N行分别描述枣在骑士的位置。如5 5表示在第5行的5列的最小方格里有一个骑士。
【输出】
如果你能找到符合要求的切割方法则输出YES,否则输出NO
【样例输入】
5 8
2 4
3 3
3 4
3 5
4 2
4 4
4 5
5 5
1 1
1 1
2 2
2 2
1 1
9 13
1 1
1 6
2 8
3 5
4 7
5 1
5 3
5 9
7 1
7 2
7 9
8 1
9 9
【样体输出】
YES
YES
NO
YES
[ 本帖最后由 sunshineboy1 于 2013-6-24 12:36 编辑 ]