提示:很烦很简单的国际象棋棋盘模拟,输入比较麻烦而已

输出时:

1、不论黑白,KQRBN P均是依次输出,强制大写,但不输出“P”,只输出其坐标

2、对白棋的位置,小行优先大行输出(行的数字越小则优先)同行则按列的顺序(a~h)

3、对黑棋的位置,大行优先小行输出(行的数字越大则优先)同行则按列的顺序(a~h)

4、从2、3点可以看出,黑棋总是先被输入,白棋总是后输入,即黑棋总在棋盘上方,白棋总在棋盘下方,所以输入完成后,对于黑色棋子只需要按类型次序输出,同类型棋子的顺序就是输入的顺序;而白色棋子要考虑同类型棋子之间的排序,而同类型棋子之间又仅需要考虑不同行棋子之间的排序,同一行棋子的排序就是输入顺序

5、棋子可能不齐全,不存在的棋子不输出,用标记解决

6、最后的棋子后面不带逗号,要找出最后的棋子

题意转自  優YoU http://user.qzone.qq.com/289065406/blog/1299148268

根据以上信息可以直接贴代码了

 #include<cstdio>
#include<cstring>
using namespace std;
char white[]={'K','Q','R','B','N','P'};
char black[]={'k','q','r','b','n','p'};
char goal[][];
int main()
{
char a,b,c,d;
char s[];
gets(s);
for(int j,i=;i>=;--i){
getchar();
for(j=;j<=;++j){
scanf("%c%c%c%c",&a,&b,&c,&d);
goal[i][j]=b;
}
getchar();gets(s);
}
printf("White: ");
int flag=;
for(int k=;k<;++k)
for(int j,i=;i<=;++i)
for(j=;j<=;++j)
if(goal[i][j]==white[k]){
if(flag) printf(",");
if(goal[i][j]!='P') printf("%c%c%d",white[k],j+'a',i+);
else printf("%c%d",j+'a',i+);
flag++;
}
printf("\n");
flag=;
printf("Black: ");
for(int k=;k<;++k)
for(int j,i=;i>=;--i)
for(j=;j<=;++j)
if(goal[i][j]==black[k]){
if(flag) printf(",");
if(goal[i][j]!='p') printf("%c%c%d",white[k],j+'a',i+);
else printf("%c%d",j+'a',i+);
flag++;
}
printf("\n");
return ;
}

poj 2996的更多相关文章

  1. 模拟 POJ 2996 Help Me with the Game

    题目地址:http://poj.org/problem?id=2996 /* 题意:给出白方和黑方的棋子和对应的坐标,输出该副棋盘的样子 模拟题 + 结构体排序:无算法,switch区分读入的字符,按 ...

  2. Poj 2996 Help Me with the Game

    1.Link: http://poj.org/problem?id=2996 2.Content: Help Me with the Game Time Limit: 1000MS   Memory ...

  3. poj 2996 Help Me with the Game(模拟)

    题目:http://poj.org/problem?id=2996 题意:给出 棋盘 情况 输出 白棋 和 黑棋在 棋盘上的 白棋为大写字母 黑棋为小写字母 棋盘 左下点为原点(1,a) 输出 是 按 ...

  4. POJ 2996 &amp; 2993 国际象棋布局 模拟

    Description Your task is to read a picture of a chessboard position and print it in the chess notati ...

  5. 快速切题 poj 2996 Help Me with the Game 棋盘 模拟 暴力 难度:0

    Help Me with the Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3510   Accepted:  ...

  6. POJ 2996:Help Me with the Game

    Help Me with the Game Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64 ...

  7. poj很好很有层次感(转)

    OJ上的一些水题(可用来练手和增加自信) (POJ 3299,POJ 2159,POJ 2739,POJ 1083,POJ 2262,POJ 1503,POJ 3006,POJ 2255,POJ 30 ...

  8. POJ题目分类推荐 (很好很有层次感)

    著名题单,最初来源不详.直接来源:http://blog.csdn.net/a1dark/article/details/11714009 OJ上的一些水题(可用来练手和增加自信) (POJ 3299 ...

  9. poj 2993

    跟poj 2996反过来了,这里比较麻烦的就是处理白棋和黑棋各棋子对应的位置 还有在最后打印棋盘式|,:,.的时候会有点繁琐(- - ACMer新手 ): 直接看代码吧: #include<cs ...

随机推荐

  1. ylbtech-自信:自信

    ylbtech-自信:自信 自信心(confidence),在心理学中,与其最接近的是班杜拉(A.Bandura)在社会学习理论中提出的自我效能感 (self-efficacy)的概念,是指个体对自身 ...

  2. 蚁群算法MATLAB解TSP问题

    Excel表exp12_3_1.xls中数据为: clc clear all [xdata,textdata]=xlsread('exp12_3_1.xls'); %加载20个城市的数据,数据按照表格 ...

  3. day1---转自金角大王

    金角大王等待唐僧的日子 Yesterday, when I was young, There were so many songs that waited to be sung. 博客园 首页 新随笔 ...

  4. KiCad 工程用 Git 管理需要忽略哪些文件?

    KiCAD 工程用 Git 管理需要忽略哪些文件? KiCAD 使用的 文本格式,天生可以用 Git 来管理. 但是并非所有文件需要使用 Git 管理,以下文件可以忽略. *.bak fp-info- ...

  5. golang的包导入import

    import别名/点下划线(1)import关键字的作用:作用是导入该go源文件所依赖的package包.用在go源文件中,紧接在pakage后面的部分.(2)只要在源文件中用到了的package包就 ...

  6. CentOS 上MySQL报错Can't connect to local Mysql server through socket '/tmp/mysql.scok' (111)

    好吧,这是最常见的MySQL服务没有打开 那就赶紧去打开啊! 在管理员模式下运行以下语句: /usr/local/mysql/bin/mysqld_safe --user=mysql & 成功 ...

  7. python 代码中的类和对象

  8. asp.net ajax客户端框架如何调用Page Method

    asp.net ajax客户端框架如何调用Page Method 1:欲调用的页面方法必须声明为公有(Public)2:该方法必须为静态方法(static)3:该方法必须添加[System.Web.S ...

  9. spring data jpa使用别名--as

    使用jpa进行两表联查时总会有字段名相同,所以需要用别名进行区分: 例子: department表同时包含子级id和父级id: 查询语句为: select d.id,d.name,d.descript ...

  10. iOS如何才能在招聘中表现得靠谱?

    http://www.cocoachina.com/programmer/20150707/12414.html 近一年内陆续面试了不少人了,从面试者到面试官的转变让我对 iOS 招聘有了更多的感受. ...