B
来源:互联网 发布:雷洋事件最新进展知不 编辑:程序博客网 时间:2024/05/01 22:13
题目链接:
http://code-festival-2017-quala.contest.atcoder.jp/tasks/code_festival_2017_quala_b
解题思路:
一个棋盘有N行,M列
设点击i行,则黑色棋子个数为i * M
设点击j列,则黑色棋子个数为j * N
设点击i行j列,则由黑转白的棋子个数为2*i*j
故当点击i行j列时,黑色棋子个数为i * M + j * N - 2 * i * j
枚举行列得出结果
AC代码
#include<stdio.h> int m,n,k; bool slove(){ for(int i = 0; i <= n; i++) for(int j = 0; j <= m; j++) { int tmp = i * m + n * j - 2 * i * j; if(tmp == k) return true; } return false;} int main(){ while(scanf("%d%d%d",&m,&n,&k) == 3) { if(slove()) printf("Yes\n"); else printf("No\n"); } return 0;}