题目链接:
http://codeforces.com/contest/55/problem/C
题意:
n×m的网格中有一些pie,每次先手可以移动一个pie到相邻的格子,如果这个pie在边界的话就可以移出去并先手胜利。后手每次选择一个边界的格子的一条边封上,先手以后就不能越过这条边移出网格。问你先手是否能胜利。
题解:
因为pie只能从最外一圈的网格移出去,除了四个角之外的格子,只要先手移动到这里,后手封上相应的边就不能移出去了,而对于四个角,后手必须在先手的pie移动到那里之前先封上一条边。所以只要任何一个pie能在4步内移动到边界就可以获胜,否则不能获胜。
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
int n,m,k;
cin>>n>>m>>k;
if(k==0)return 0*printf("NO\n");
else
{
int flag=0;
for(int i=0;i<k;i++)
{
int a,b;
cin>>a>>b;
if(a<=5 || a>=n-4 || b<=5 || b>=m-4)flag=1;
}
printf("%s\n",flag?"YES":"NO");
}
return 0;
}