求助-黑白棋
黑白棋输入文件: 标准输入 输出文件: 标准输出
时间限制: 1 Sec 内存限制: 128 MB
提交: 5 解决: 1
题目描述
黑白棋是一种游戏,两个人分别拿黑棋和白棋,在一个 N * N (N 是偶数)的棋盘格子上轮流走棋,黑棋先下,棋子下在格子里而不是交叉线上。棋盘上的一个位置(x,y)表示从下往上第 x 行,从左到右第 y 列(1<=x,y<=N)。棋盘初始的时候,在正中间的四个格子分别放下两个黑子和两个白子,从下往上两行,分别是黑白和白黑。黑子先开始下棋。当一方下完一步棋以后,横向、纵向、斜向八个方向内有一个自己的棋子,则被夹在中间的全部翻转会成为自己的棋子。并且,只有在可以翻转棋子的地方才可以下子。
现在你知道了棋谱,也就是每个人每一步下在哪里,请你计算棋局结束的时候,黑方和白方各有几个棋子。
烦恼的是,棋谱被人修改过了,增加了一些手数。好在,所有增加的手数都是不合法的,所以比较容易被识别出来,直接忽略掉就好了。
输入
第一行两个整数 N、M,分别表示棋盘的大小为 N(N<=20),双方一共下了 M(M<=400)步棋。
后续 M 行,每行两个整数 X、Y(1<=X,Y<=N),表示一步棋的位置。
输出
两个整数 B、W,分别表示棋盘上黑色和白色的棋子数量。
样例输入1
8 10
4 6
3 4
3 3
5 6
3 5
4 3
6 4
3 6
4 7
3 2
样例输出1
7 7