您的位置:首页 > 其它

POJ1657 Distance on chessboard

2016-01-21 10:57 113 查看
Distance on Chessboard

Time Limit: 1000MSMemory Limit: 10000K
Total Submissions: 25623Accepted: 8757
Description

国际象棋的棋盘是黑白相间的8 * 8的方格,棋子放在格子中间。如下图所示:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;

int main()
{
int n;
cin >> n;
while(n--) {
char b, e;
int B, E;
cin >> b >> B >> e >> E;
int keen, queen, car, ele;
int x, y;
x = abs(b - e);
y = abs(B - E);
if(x == y && y == 0) {
keen = 0; queen = 0; car = 0; ele = 0;
}
else {
if(x < y) keen = y;
else keen = x;
if(x == y || x == 0 || y == 0) queen = 1;
else queen = 2;
if(x == 0 || y == 0) car = 1;
else car = 2;
if((x - y) % 2 != 0) ele = -1;
else if(x == y) ele = 1;
else ele = 2;
}
if(ele == -1) {
printf("%d %d %d Inf\n", keen, queen, car);
} else {
printf("%d %d %d %d\n", keen, queen, car, ele);
}
}
return 0;
}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: