Rikka with Chess
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 504 Accepted Submission(s): 421
Problem Description
Yuta gives Rikka a chess board of size n×m.
As we all know, on a chess board, every cell is either black or white and every two cells that share a side have different colors.
Rikka can choose any rectangle formed by board squares and perform an inversion, every white cell becomes black, and vice versa.
Rikka wants to turn all cells into the same color, please tell Rikka the minimal number of inversions she need to achieve her goal.
As we all know, on a chess board, every cell is either black or white and every two cells that share a side have different colors.
Rikka can choose any rectangle formed by board squares and perform an inversion, every white cell becomes black, and vice versa.
Rikka wants to turn all cells into the same color, please tell Rikka the minimal number of inversions she need to achieve her goal.
Input
The first line contains a number T(T≤10) ——The
number of the testcases.
Each testcase contains two numbers n,m(n≤109,m≤109).
Each testcase contains two numbers n,m(n≤109,m≤109).
Output
For each testcase, print a single number which represents the answer.
Sample Input
3 1 2 2 2 3 3
Sample Output
1 2 2题意:给你一个n*m的黑白相间的棋盘,你可以任选一个矩形,反转里面的颜色,即黑变白白变黑,求出可以让整个棋盘颜色相同的最少操作次数。思路:找规律,每次反转时整行整列反转。AC-code:#include<cstdio> int main() { int T,n,m; scanf("%d",&T); while(T--) { scanf("%d%d",&n,&m); if(m==1) { printf("%d\n",n/2); continue; } if(n==1) { printf("%d\n",m/2); continue; } printf("%d\n",m/2+n/2); } return 0; }