POJ 2993 Emag eht htiw Em Pleh解题报告

来源:互联网 发布:html源码metro 编辑:程序博客网 时间:2024/05/21 09:55

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.|+---+---+---+---+---+---+---+---+

这个题用了最笨的方法,结果RE了两次,调试了好久,原理就不说了,衰。。。

#include<iostream>#include<stdio.h>#include<stdlib.h>#include<string.h>using namespace std;char a[18][34]={{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'},{'|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|',':',':',':','|','.','.','.','|'},{'+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+','-','-','-','+'}};int main(){int i,j;/*for(i=0;i<17;i++){for(j=0;j<33;j++){cout<<a[i][j];}cout<<endl;}*/char white[1000];char black[1000];int lenw,lenb;gets(white);gets(black);//cout<<white<<endl;//cout<<black<<endl;lenw=strlen(white);lenb=strlen(black);/*for(i=0;i<17;i++){for(j=0;j<33;j++){cout<<a[i][j];}cout<<endl;}*/i=7;for(i=7;i<lenw;i+=4){if(white[i]>=65&&white[i]<=90)//判断第8个字符是不是大写字母。a[(9-(white[i+2]-'0'))*2-1][(white[i+1]-'a')*4+2]=white[i];else//不是就撤,表示后面只有P了break;}for(j=i;j<lenw;j+=3){if(white[j]>=97&&white[j]<=122)//判断有没有小写字母a[(9-(white[j+1]-'0'))*2-1][(white[j]-'a')*4+2]='P';else//没有了就over了。break;}i=7;//同上哈,不罗嗦。for(i=7;i<lenb;i+=4){if(black[i]>=65&&black[i]<=90)a[(17-(black[i+2]-'0')*2)][(black[i+1]-'a')*4+2]=black[i]+32;else break;}for(j=i;j<lenb;j+=3){if(black[j]>=97&&black[j]<=122)a[(17-(black[j+1]-'0')*2)][(black[j]-'a')*4+2]='p';elsebreak;}for(i=0;i<17;i++){for(j=0;j<33;j++){cout<<a[i][j];}cout<<endl;}return 0;}
原创粉丝点击