Codeforces 38B - Chess

38B - Chess

思路:懂点象棋的规则就可以,看看哪些点可以放马。

代码:

#include<bits/stdc++.h>
using namespace std; 
#define ll long long
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    string s,t;
    cin>>s>>t;
    int x=s[0]-'a'+1,y=s[1]-'0';
    int a=t[0]-'a'+1,b=t[1]-'0';
    int cnt=0;
    for(int i=1;i<=8;i++)
    {
        for(int j=1;j<=8;j++)
        {
            if((i!=a||j!=b)&&i!=x&&j!=y&&(i-x)*(i-x)+(j-y)*(j-y)!=5&&(i-a)*(i-a)+(j-b)*(j-b)!=5)cnt++;
        }
    }
    cout<<cnt<<endl;
    return 0;
}

 

posted @ 2017-08-10 17:59  Wisdom+.+  阅读(237)  评论(0编辑  收藏  举报