您的位置:首页 > 其它

HDOJ 5630-Rikka with Chess

2016-02-21 13:33 411 查看

Rikka with Chess

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)

Total Submission(s): 111 Accepted Submission(s): 96

[align=left]Problem Description[/align]
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.

[align=left]Input[/align]
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).

[align=left]Output[/align]
For each testcase, print a single number which represents the answer.

[align=left]Sample Input[/align]

3
1 2
2 2
3 3


[align=left]Sample Output[/align]

1
2
2


[align=left]Source[/align]
BestCoder Round #73 (div.2)
解题思路:
题目很好理解,就是有一个n*n的棋盘其中黑白方块相同颜色的是不会相邻的,每次我们都可以制定一个任意大小的矩形,将其中的颜色反转,问最小通过多少步可以将整个棋盘反转成同一种颜色。
很好理解先将2.4.6.8...........行反转,再将2.4.6.8..........反转就是最小步骤。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int  main()
{
int t,a,b;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&a,&b);
int wc,wcnm;
wc=a/2;
wcnm=b/2;
printf("%d\n",wc+wcnm);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: