Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u

Submit Status

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,e4
Black: 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.|
+---+---+---+---+---+---+---+---+

题意就是把2996的那道题的输出变输入,输入变输出。我觉得一下子变简单了很多,起码没那么多的麻烦事了。

思路就是现在是一个空棋盘,然后题目给了各个棋子的位置,拿这些棋子去占相应的位置,之后再输出占好各个位置的棋盘。

代码:

#include <iostream>
#include <algorithm>
#include <cmath>
#include <vector>
#include <string>
#include <cstring>
#pragma warning(disable:4996)
using namespace std; const string temp="+---+---+---+---+---+---+---+---+";
string test[20];
string cal[5]; int i,len;
char row,col; int main()
{
test[1]="|...|:::|...|:::|...|:::|...|:::|";
test[2]="|:::|...|:::|...|:::|...|:::|...|";
test[3]="|...|:::|...|:::|...|:::|...|:::|";
test[4]="|:::|...|:::|...|:::|...|:::|...|";
test[5]="|...|:::|...|:::|...|:::|...|:::|";
test[6]="|:::|...|:::|...|:::|...|:::|...|";
test[7]="|...|:::|...|:::|...|:::|...|:::|";
test[8]="|:::|...|:::|...|:::|...|:::|...|"; cin>>cal[0];
cin>>cal[1];
cin>>cal[3];
cin>>cal[2]; len=cal[1].length();
for(i=0;i<len;i++)
{
if(cal[1][i]==',')continue;
else if(cal[1][i]=='K')
{
row=cal[1][i+1];
col=cal[1][i+2]; test[9-(col-'0')][(row-'a')*4+2]='K';
i=i+2;
}
else if(cal[1][i]=='Q')
{
row=cal[1][i+1];
col=cal[1][i+2]; test[9-(col-'0')][(row-'a')*4+2]='Q';
i=i+2;
}
else if(cal[1][i]=='R')
{
row=cal[1][i+1];
col=cal[1][i+2]; test[9-(col-'0')][(row-'a')*4+2]='R';
i=i+2;
}
else if(cal[1][i]=='B')
{
row=cal[1][i+1];
col=cal[1][i+2]; test[9-(col-'0')][(row-'a')*4+2]='B';
i=i+2;
}
else if(cal[1][i]=='N')
{
row=cal[1][i+1];
col=cal[1][i+2]; test[9-(col-'0')][(row-'a')*4+2]='N';
i=i+2;
}
else if(cal[1][i]>='a'&&cal[1][i]<='h')
{
row=cal[1][i];
col=cal[1][i+1]; test[9-(col-'0')][(row-'a')*4+2]='P';
i=i+1;
}
} len=cal[2].length();
for(i=0;i<len;i++)
{
if(cal[2][i]==',')continue;
else if(cal[2][i]=='K')
{
row=cal[2][i+1];
col=cal[2][i+2]; test[9-(col-'0')][(row-'a')*4+2]='k';
i=i+2;
}
else if(cal[2][i]=='Q')
{
row=cal[2][i+1];
col=cal[2][i+2]; test[9-(col-'0')][(row-'a')*4+2]='q';
i=i+2;
}
else if(cal[2][i]=='R')
{
row=cal[2][i+1];
col=cal[2][i+2]; test[9-(col-'0')][(row-'a')*4+2]='r';
i=i+2;
}
else if(cal[2][i]=='B')
{
row=cal[2][i+1];
col=cal[2][i+2]; test[9-(col-'0')][(row-'a')*4+2]='b';
i=i+2;
}
else if(cal[2][i]=='N')
{
row=cal[2][i+1];
col=cal[2][i+2]; test[9-(col-'0')][(row-'a')*4+2]='n';
i=i+2;
}
else if(cal[2][i]>='a'&&cal[2][i]<='h')
{
row=cal[2][i];
col=cal[2][i+1]; test[9-(col-'0')][(row-'a')*4+2]='p';
i=i+1;
}
} cout<<temp<<endl;
for(i=1;i<=8;i++)
{
cout<<test[i]<<endl;
cout<<temp<<endl;
} return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

POJ 2993:Emag eht htiw Em Pleh的更多相关文章

  1. Poj 2993 Emag eht htiw Em Pleh

    1.Link: http://poj.org/problem?id=2993 2.Content: Emag eht htiw Em Pleh Time Limit: 1000MS   Memory ...

  2. 模拟 POJ 2993 Emag eht htiw Em Pleh

    题目地址:http://poj.org/problem?id=2993 /* 题意:与POJ2996完全相反 模拟题 + 字符串处理:无算法,读入两行字符串找出相应点用used标记,输出时标记过的输出 ...

  3. POJ 2993 Emag eht htiw Em Pleh【模拟画棋盘】

    链接: http://poj.org/problem?id=2993 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=27454#probl ...

  4. Emag eht htiw Em Pleh 分类: POJ 2015-06-29 18:54 10人阅读 评论(0) 收藏

    Emag eht htiw Em Pleh Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2937   Accepted: ...

  5. 快速切题 poj 2993 Emag eht htiw Em Pleh 模拟 难度:0

    Emag eht htiw Em Pleh Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2806   Accepted:  ...

  6. POJ2993——Emag eht htiw Em Pleh(字符串处理+排序)

    Emag eht htiw Em Pleh DescriptionThis problem is a reverse case of the problem 2996. You are given t ...

  7. Emag eht htiw Em Pleh

    Emag eht htiw Em Pleh This problem is a reverse case of the problem 2996. You are given the output o ...

  8. Emag eht htiw Em Pleh(imitate)

    Emag eht htiw Em Pleh Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2901   Accepted:  ...

  9. 模拟 + 打表 --- Emag eht htiw Em Pleh

    Emag eht htiw Em Pleh Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2578   Accepted: ...

随机推荐

  1. QT5安装

    Windows+Qt5.3.1+VS2013安装教程 https://blog.csdn.net/two_ye/article/details/96109876 (已成功)windows下,VS201 ...

  2. 第2节 网站点击流项目(下):3、流量统计分析,分组求topN

    四. 模块开发----统计分析 select * from ods_weblog_detail limit 2;+--------------------------+---------------- ...

  3. Go语言 Note

    1.简单的CURD之搭建基础框架 //路由层 func Router(rg *gin.RouterGroup){ rg.GET("/getsupplier", facility.G ...

  4. pt-archiver 归档数据

    pt-archiver 参数说明pt-archiver是Percona-Toolkit工具集中的一个组件,是一个主要用于对MySQL表数据进行归档和清除工具.它可以将数据归档到另一张表或者是一个文件中 ...

  5. Spring源码深度解析-《源码构建》

    1.gradle构建eclipse项目时,gradle-5.0版本构建失败,gradle-3.3构建成功!Why 2.导入spring-framework-3.2.x/spring-beans之前先导 ...

  6. R 再也不用愁变量太多跑回归太麻烦!R语言循环常用方法总结

    在高维数据分析过程中,为了筛选出与目标结局相关的变量,通常会用到回归分析,但是因为自变量较多,往往要进行多次回归.这就是统计编程语言发挥作用的时候了 有些大神们认为超过3次的复制粘贴就可以考虑使用循环 ...

  7. jenkins#安装gitlab

    通过docker安装gitlab 参考 ------------------------------ 拉docker 镜像: docker pull gitlab/gitlab-ce 创建目录存储gi ...

  8. springboot 中单机 redis 实现分布式锁

    在微服务中经常需要使用分布式锁,来执行一些任务.例如定期删除过期数据,在多个服务中只需要一个去执行即可. 以下说明非严格意义的分布式锁,因为 redis 实现严格意义的分布式锁还是比较复杂的,对于日常 ...

  9. 2.9 学习总结 之 【Android】体温统计APP

    一.说在前面 昨天 学习了JQ的相关知识 今天 编写体温统计APP 我的工程源码:https://github.com/xiaotian12-call/Take-body-temperature 二. ...

  10. Asp.net MVC中ReturnUrl的使用

    1.控制器(Controller)[HttpPost][ValidateInput(false)]public ActionResult Add(Article article,string retu ...