关注一下小编,让你,知道不一样的象棋!

中国象棋俗语大全

红先黑后,输了不臭.

马闯殿前,帅士无损;兵临城下,将相不和. 单车挂炮,瞎胡闹.

马走日,象走田,小卒过河不回还!

缺士怕马缺象怕炮

一马换双象,其势必英雄

题目来自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),并且需要考虑“憋马腿”与将帅不能照面(将、帅如果在同一条直线上,中间又不隔着任何棋子得到情况下,走子的一方获胜)的规则。输入所有棋子的位置,保证局面合法并且红方已将军。你的任务是判断红方是否已经把黑方将死。具体规则可参看原题目。

象棋-C语言实现象棋残局将死判断

需要考虑的几个点:

车忌低头帅忌高

马入宫,必遭凶

1、需要读取多个测试例;

马跳窝心,将帅发昏。

象棋-C语言实现象棋残局将死判断象棋-C语言实现象棋残局将死判断

2、将帅照面的情况,比如初始状态就将帅照面了,或走一步照面;

3、炮必须隔一个子;

4、“憋马腿”的情况;

象棋-C语言实现象棋残局将死判断

剩下就是个人实现的细节差异了。

马看炮,瞎胡闹。

个人代码实现如下:

主函数循环读取数据,对每个测试例进行判断,并输出结果,调试过程中可以利用freopen将输入和输出记录在文件中。

切忌车迟开,马躁进,炮轻发。

象棋-C语言实现象棋残局将死判断

黑方将的可走位置利用查表的方式寻找。

象棋-C语言实现象棋残局将死判断

检查是否将死,飞将、车、炮和马。

撑起羊角士,不怕马来将。

象棋-C语言实现象棋残局将死判断

检查飞将的情况。

*象棋谱式

将军不离九宫内,士止相随不出官。

象飞四方营四角,马行一步一尖冲。

炮须隔子打一子,车行直路任西东。

象棋-C语言实现象棋残局将死判断

检查马是否能将死黑将。

唯卒只能行一步,过河横进退无踪。

中炮局

起炮在中宫,观棋气象雄。

象棋-C语言实现象棋残局将死判断

详细完整代码如下象棋技巧

象棋-C语言实现象棋残局将死判断

需要源代码的可以私信,私信发象棋源码判定

马常守中卒,士上将防空。

象要车相附,卒宜左右攻。

居将炮车敌,马出渡河容。

士相局势

炮向士角安,车行两路前。

过河车炮上,炮在后为先。

集车拿士相,仍教炮向前。

敌人轻不守,捉将不为难。

飞0炮局势

炮车边塞上,临阵势如飞。

虚隙井图象,冲前敌势危。

绝敌寻先子,无语自沉吟。车将车破敌,变化少人知。

象局势

象局势能安,行车出两边。

车先河上立,马在后遮拦。

炮急常行动,上士必相圆。

象眼深防塞,中心卒莫行。

势成方动炮,攻敌两河边。

劝君依此诀,捉将有何难。

破车势

一车在中营,鸳鸯马上攻。

一车河上立,中卒向前冲。

引车塞象眼,炮在后相从。

宜用心机

象棋易学最难精,妙着神机自巧生。

得势舍车方有益,失先弃子必无成。

他强己弱须兼守,彼弱吾强可横行。

更熟此书胸臆内,管教到处有芳名。

胜宜得先

得子得先名得胜,得子失先却是输。

车前马后须相应,进退应须要付车。

残棋马胜炮回家,

车占中心,杀的老将哼哼。

将帅不能会亲家,一但会面俩嘶牙。

摆炮在中宫,比诸局较凶。

双象高飞象保马不怕单车来攻打。

车占中心马挂角,神仙来也救不了。

二照将,动老将。

三子归边一盘棋。

缺士怕双车。

缺相怕炮。

担子炮气死双车。

兵卒过河顶杆车。

三步不出车,就把棋来输。

马逢边必死。

炮不虚发。

车不占险地。

相在东马在西,只马单相也和棋。

单车难胜士相全。

开局阶段少动马,残局阶段炮回家。

车怕通,马怕活,车通横冲直闯,马活八面威风。

炮撵丹沙,不死也伤。

学会下棋,不嫌饭迟。

看好走对,不抓不退。

棋输木头在。

两国交兵勇者胜,求稳怕搏杀。

红先黑后,输了不臭。

一马换双相,棋势必英雄。

兵卒过河不能退,

车离拐角纵横战,

士走斜线防四边,

炮要吃子需返山,

将在九宫度方步,

双方老头不照面。

一炮二炮是和棋.宁失一子,不失一先.三子拨边叫死棋.

留言评论在下方