孤独的骑士 oj60
2017-07-26 18:09
232 查看
孤独的骑士
发布时间: 2017年5月25日 19:57 最后更新: 2017年5月26日 00:18 时间限制: 1000ms 内存限制: 128M描述
任务很简单. 确定国际象棋棋盘上处于骑士攻击之下的格子个数. 棋盘上没有其它棋子. 骑士的走法: 横(纵)向走两个格, 再纵(横)向走一个格(类似于中国象棋中的马).
输入
第一行为测试次数N, 1 <= N <= 100. 后面N行每行包含一个坐标表示骑士的位置. 字母表示横向位置, 数字表示纵向位置.
输出
输出N行. 每行一个整数, 表示骑士可攻击的格子个数.
样例输入1 复制
3 a1 d4 g6
样例输出1
2 8 6
#include<iostream> using namespace std; int dir[8][2] = { { -2, 1 }, { -1, 2 }, { 1, 2 }, { 2, 1 }, { 2, -1 }, { 1, -2 }, { -1, -2 }, { -2, -1 } }; int main() { int t; cin >> t; while (t--) { char str[2]; cin >> str; int ans = 0,nX,nY; nY=str[1]-'0'; switch (str[0]) { case 'a': nX = 1; break; case 'b': nX = 2; break; case 'c': nX = 3; break; case 'd': nX = 4; break; case 'e': nX = 5; break; case 'f': nX = 6; break; case 'g': nX = 7; break; case 'h': nX = 8; break; } int X, Y; for (int i = 0; i < 8; i++) { X = nX + dir[i][1]; Y = nY + dir[i][0]; if (X >= 1 && X < 9 && Y >= 1 && Y < 9) ans++; } cout << ans << endl; } return 0; }
相关文章推荐
- 马踏棋盘算法(骑士周游问题)- 数据结构和算法60
- 马踏棋盘算法(骑士周游问题)- 数据结构和算法60
- 南邮 OJ 1664 骑士问题
- 1099: 孤独的骑士
- a+b (九度oj 题目60)
- 【算法学习笔记】60.经典动态规划 SJTU OJ 1370 赫萝的桃子
- 南阳oj 题目60 谁获得了最高奖学金
- a+b (九度oj 题目60)
- 【学校OJ】二分图匹配 骑士共存问题
- 孤独的骑士
- LeetCode_OJ【60】Permutation Sequence
- 北邮OJ 2016 网预-Square Coins
- 题目1173:查找 九度OJ
- 稳扎稳打Silverlight(60) - 4.0通信之WCF RIA Services: 权限验证
- OJ循环——分数序列的和
- 【杭电-oj】 -2111-Saving HDU(最对可以带走价值多少的宝藏)
- [网络流24题]骑士共存问题
- [整理II]精选微软等公司数据结构+算法面试100题 [第41-60题]
- 九度OJ 1095 2的幂次方
- 哈理工OJ 1189 区间最大值 II(线段树【简单】)