Emag eht htiw Em Pleh

来源:互联网 发布:新型网络诈骗手段莆田 编辑:程序博客网 时间:2024/06/05 17:41

Emag eht htiw Em Pleh
Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 3314 Accepted: 2176

Description

This problem is a reverse case of the problem 2996. You are given the output of the problem H and your task is to find the corresponding input.

Input

according to output of problem 2996.

Output

according to input of problem 2996.

Sample Input

White: Ke1,Qd1,Ra1,Rh1,Bc1,Bf1,Nb1,a2,c2,d2,f2,g2,h2,a3,e4Black: Ke8,Qd8,Ra8,Rh8,Bc8,Ng8,Nc6,a7,b7,c7,d7,e7,f7,h7,h6

Sample Output

+---+---+---+---+---+---+---+---+|.r.|:::|.b.|:q:|.k.|:::|.n.|:r:|+---+---+---+---+---+---+---+---+|:p:|.p.|:p:|.p.|:p:|.p.|:::|.p.|+---+---+---+---+---+---+---+---+|...|:::|.n.|:::|...|:::|...|:p:|+---+---+---+---+---+---+---+---+|:::|...|:::|...|:::|...|:::|...|+---+---+---+---+---+---+---+---+|...|:::|...|:::|.P.|:::|...|:::|+---+---+---+---+---+---+---+---+|:P:|...|:::|...|:::|...|:::|...|+---+---+---+---+---+---+---+---+|.P.|:::|.P.|:P:|...|:P:|.P.|:P:|+---+---+---+---+---+---+---+---+|:R:|.N.|:B:|.Q.|:K:|.B.|:::|.R.|+---+---+---+---+---+---+---+---+

#include <iostream>#include <cstdio>#include <cmath>#include <algorithm>#include <cstring>using namespace std;int flag[10][10];char s[100];void in(int t){    scanf("%s",s) ;    scanf("%s",s);    int l=strlen(s);    int i;    for(i=0;i<l;++i)    {        if(isupper(s[i]))        {            int y=s[i+1]-'a';            int x=s[i+2]-'0';            if(t==1)            flag[x][y]=s[i];            else flag[x][y]=tolower(s[i]);            i+=3;            continue;        }        else        if(islower(s[i]))        {            int y=s[i]-'a';            int x=s[i+1]-'0';            if(t==1)            flag[x][y]='P';            else flag[x][y]='p';            i+=2;            continue;        }    }}void printl(){    printf("+---+---+---+---+---+---+---+---+\n");}void print(){    int i,j;    for(i=8;i>=1;--i)    {        printl();        for(j=0;j<8;++j)        {            if((j+i)%2==0)            {                if(flag[i][j])                printf("|.%c.",flag[i][j]);                else printf("|...");            }            else            {                if(flag[i][j])                printf("|:%c:",flag[i][j]);                else printf("|:::");            }        }        printf("|\n");    }    printl();}int main(){    in(1);    in(2);    print();    return 0;}



0 0