记录编号 |
417761 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[POJ1657] 棋盘上的距离 |
最终得分 |
100 |
用户昵称 |
joel |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2017-06-27 16:52:38 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
using namespace std;
int main()
{
freopen("poj_1657.in","r",stdin);
freopen("poj_1657.out","w",stdout);
int n;
cin>>n;
char a,b,c,d;
for(int i=1;i<=n;i++)
{
cin>>a>>b>>c>>d;
if(a==c&&b==d)
{
cout<<0<<' '<<0<<' '<<0<<' '<<0<<endl;
continue;
}
int row=abs(a-c);
int col=abs(b-d);
int king=max(row,col);
int queen=(row==col||col==0||row==0)?1:2;
int car=(row==0||col==0?1:2);
cout<<king<<' '<<queen<<' '<<car<<' ';
int ele;
int p1=0,p2=0;
if(!(a%2))
p1++;
if(!(b%2))
p1++;
if(!(c%2))
p2++;
if(!(d%2))
p2++;
if(p1==p2||abs(p1-p2)==2)
{
if(row==col)
ele=1;
else
ele=2;
}
else
ele=0;
if(ele)
cout<<ele<<endl;
else
cout<<"Inf"<<endl;
}
return 0;
}