poj-2993-Emag eht htiw Em Pleh && poj-2996-Help Me with the Game
2016-03-28 21:08
489 查看
poj-2993 poj-2996
先说2996的题意:
给一张棋盘,按KQRBKNP的顺序输出棋子的位置
其中大写字母代表白棋,小写字母代表黑棋
有一点需要注意,左下角是(1, 1)点
细心一些,耐心一些就可以AC了
2993和2996是相反的,给出每个棋子的位置,输出棋盘
先说2996的题意:
给一张棋盘,按KQRBKNP的顺序输出棋子的位置
其中大写字母代表白棋,小写字母代表黑棋
有一点需要注意,左下角是(1, 1)点
细心一些,耐心一些就可以AC了
#include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <cmath> #include <stack> #include <string> #include <map> #include <algorithm> #define N 13 #define ll long long using namespace std; char Map[10][10]; string s; int main(){ #ifndef ONLINE_JUDGE freopen("1.txt", "r", stdin); #endif int i, j, l; bool flag = true; getline(cin, s); for (i = 0; i < 8; i++){ getline(cin, s); l = s.size(); for (j = 0; j < 8; j++){ Map[i][j] = s[2+j*4]; } getline(cin, s); } printf("White: "); for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'K'){ if (flag){ flag = false; }else{ printf(","); } printf("K%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'Q'){ printf(",Q%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'R'){ printf(",R%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'B'){ printf(",B%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'N'){ printf(",N%c%d", j+'a', 8-i); } } } for (i = 7; i >= 0; i--){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'P'){ printf(",%c%d", j+'a', 8-i); } } } puts(""); printf("Black: "); flag = true; for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'k'){ if (flag){ flag = false; }else{ printf(","); } printf("K%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'q'){ printf(",Q%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'r'){ printf(",R%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'b'){ printf(",B%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'n'){ printf(",N%c%d", j+'a', 8-i); } } } for (i = 0; i < 8; i++){ for (j = 0; j < 8; j++){ if (Map[i][j] == 'p'){ printf(",%c%d", j+'a', 8-i); } } } puts(""); return 0; }
2993和2996是相反的,给出每个棋子的位置,输出棋盘
#include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <cmath> #include <stack> #include <string> #include <map> #include <algorithm> #define N 13 #define ll long long using namespace std; char Map[10][10]; string s; int main(){ #ifndef ONLINE_JUDGE freopen("1.txt", "r", stdin); #endif int i, j, k, l, x, y; char c; getline(cin, s); l = s.size(); for (i = 0; 7+i*4 < l; i++){ c = s[7+i*4]; if (c < 'A' || c > 'Z') break; x = s[9+i*4]-'0'; y = s[8+i*4]-'a'; Map[x][y] = c; } for(i = 7+i*4; i < l; i+=3){ x = s[i+1]-'0'; y = s[i]-'a'; Map[x][y] = 'P'; } getline(cin, s); l = s.size(); for (i = 0; 7+i*4 < l; i++){ c = s[7+i*4]+32; if (c < 'a' || c > 'z') break; x = s[9+i*4]-'0'; y = s[8+i*4]-'a'; Map[x][y] = c; } for(i = 7+i*4; i < l; i+=3){ x = s[i+1]-'0'; y = s[i]-'a'; Map[x][y] = 'p'; } puts("+---+---+---+---+---+---+---+---+"); for (i = 8; i > 0; i--){ printf("|"); for (j = 0; j < 8; j++){ if ((i+j)&1){ printf(":"); }else{ printf("."); } if ((Map[i][j] >= 'a' && Map[i][j] <= 'z') || (Map[i][j] >= 'A' && Map[i][j] <= 'Z')){ printf("%c", Map[i][j]); }else{ if ((i+j)&1){ printf(":"); }else{ printf("."); } } if ((i+j)&1){ printf(":|"); }else{ printf(".|"); } } cout << endl; puts("+---+---+---+---+---+---+---+---+"); } return 0; }
相关文章推荐
- 源码编译安装nginx1.4.7
- b+c 模式 H5 与 Android 混合 开发详解
- 源码编译安装nginx1.4.7
- 第一家公司面试
- 什么是CGI
- Linux学习笔记之一
- hdu 1085
- 【Redis源码剖析】 - Redis内置数据结构之字符串sds
- LeetCode-1. Two Sum
- Android中EventBus使用详解(一)
- iOS - UITableViewCell reload 数据刷新method
- 第四周项目5:程序分析
- Hibernate的初次使用
- JSP页面嵌套乱码解决
- Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)适用于centos 7
- 理解Linux系统/etc/init.d目录和/etc/rc.local脚本
- Node.js HTTP Server对象及GET、POST请求
- 仿微信朋友圈实现共享视图元素的切换动画
- spring+hibernate+struts+mysql
- Aizu 2249Road Construction 单源最短路变形 spfa模板改写