链接:https://ac.nowcoder.com/acm/problem/21669
来源:牛客网
题目大意
给你一个网格,有些点被#覆盖了不能再走,其他点是空地,现在牛牛和牛妹轮流开始将空地变成#
如果当前轮到的人操作之后左上角到右下角不存在通路了,当前操作的人就输了
通路只能是从左上角到右下角往右或者往下走的路径
牛牛先开始操作,如果双方都是绝顶聪明,输出最后谁赢
保证一开始给你的网格是存在一条左上角到右下角的通路的,当然,左上角与右下角都是空地。
题目分析
发现任意一条路径其奇偶性都是一样的,
所以不妨取最短路经长度,我们只要判断除不可走点
之外的长度与最短路径长度差的奇偶性即可。
#include<bits/stdc++.h>
using namespace std;
#define debug puts("YES");
#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)
#define ll long long
#define lrt int l