洛谷 CF630R 题解

题目传送门


题意:

学生和教授两人轮流给 \(n×n\) 棋盘上的格子染色,不能将已染色的格子的周围格进行染色。谁没有格子染谁就输。若两人都以最好的方式染色,学生应选择先手还是后手?


思路:

我们可以将棋盘分为黑白两色,两人只能染完两种颜色其中一种。

可以分为两种情况:

  • \(n×n\) 为奇数时(也可以说当 \(n\) 为奇数时),白格数量为偶数,黑格数量为奇数,学生需要先手,染黑格,教授后面只能染黑格,学生胜。

  • \(n×n\) 为偶数时(也可以说当 \(n\) 为偶数时),白格数量和黑格数量都是偶数,学生后手赢。


注意:

千万不能输出多余的空格,我就被了好几次。


code:

#include <bits/stdc++.h>
using namespace std;
long long n;
int main(){
	cin>>n;
	if(n%2==0)	cout<<2;
	else	cout<<1;
	return 0;
}


posted @ 2022-02-11 13:23  PandaBlack  阅读(95)  评论(0)    收藏  举报