网站首页 > 开源技术 正文
题目来自UVa1589,链接 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4464
考虑一个象棋残局,其中红方有n(2=<n<=7)个棋子,黑方只有一个将。红方除了有一个帅(G)之外,还有3种可能的棋子:车(R),马(H),炮(C),并且需要考虑“憋马腿”与将帅不能照面(将、帅如果在同一条直线上,中间又不隔着任何棋子得到情况下,走子的一方获胜)的规则。输入所有棋子的位置,保证局面合法并且红方已将军。你的任务是判断红方是否已经把黑方将死。具体规则可参看原题目。
需要考虑的几个点:
1、需要读取多个测试例;
2、将帅照面的情况,比如初始状态就将帅照面了,或走一步照面;
3、炮必须隔一个子;
4、“憋马腿”的情况;
剩下就是个人实现的细节差异了。
个人代码实现如下:
主函数循环读取数据,对每个测试例进行判断,并输出结果,调试过程中可以利用freopen将输入和输出记录在文件中。
黑方将的可走位置利用查表的方式寻找。
检查是否将死,飞将、车、炮和马。
检查飞将的情况。
检查马是否能将死黑将。
详细完整代码如下:
需要源代码的可以私信,私信发象棋源码判定
猜你喜欢
- 2024-10-18 怎样才能学好C语言?(怎么样学好c语言程序)
- 2024-10-18 编程学习《挑战程序设计竞赛》,有资源
- 2024-10-18 提升自我:程序员刷题网站大汇总(程序员刷面试题网站)
- 2024-10-18 GitHub火爆了的开源算法书,你不来搞一本?
- 2024-10-18 C语言笔记———练习网站方法步骤
- 2024-10-18 互联网公司笔试编程题之——喷水装置
- 2024-10-18 C语言网Online Judge系统支持语言和编译说明
- 2024-10-18 信息学奥赛金牌教练必备的工具——OJ
- 2024-10-18 最适合程序员编程刷题的6个网站,你用过几个?
- 2024-07-11 成熟的AI应该自己写代码,IBM发布55种语言5亿行代码数据集 | 开源
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)