由于当时对象棋人工智能非常感兴趣,索性自己借着实践QT又重新开发了一个。这个版本通过参考图书馆借的(c++中国象棋入门与提高)从头到尾自己彻彻底底做了一遍,虽然到最后因为有别的事没有把启发式算法写入,总的来说打菜鸟还是很轻松的。其实工作量真的挺大的,UI+后台全由自己设计。算法方面:1、棋子的走法-...
分类:
其他好文 时间:
2014-08-31 17:15:21
阅读次数:
406
这个版本由历届师兄传承下来的,使用开源引擎+自己修改剪枝排序算法+开局库+后台搜索jar包:http://pan.baidu.com/s/1hqABGZM
分类:
编程语言 时间:
2014-08-31 15:39:51
阅读次数:
830
1. [代码][JavaScript]代码 var AI = AI||{};AI.historyTable = {}; //历史表//人工智能初始化AI.init = function(pace){ var bill = AI.historyBill || com.gambit; //开局...
分类:
Web程序 时间:
2014-08-30 17:40:29
阅读次数:
325
题目要求输出“将”(A),“帅”(B)的所有合法位置,并且只能使用一个字节存储变量;解法一: 1 #include 2 using namespace std; 3 4 int main() 5 { 6 int i=81; 7 while(i--) 8 { 9 ...
分类:
其他好文 时间:
2014-08-28 14:47:39
阅读次数:
152
其实手写模拟一个队列也挺简单的,尤其是熟练以后。尼玛,这题欺负我不懂国际象棋,后来百度了下,国际象棋里骑士的走法就是中国象棋里面的马所以搜索就有八个方向对了注意初始化标记数组的时候,不要把起点标记为已走过。因为测试数据里面有一组f6 f6,此时样例输出的是0 1 //#define LOCAL 2 ...
分类:
其他好文 时间:
2014-08-16 17:00:20
阅读次数:
244
【题面】【我们都知道,在中国象棋中,马是走日字步的。现给定马的起始坐标与终点坐标,求出马最快能到达的路线。如果有多条路线都是步数最少的,则输出路线的数目。注意,此时棋盘上可能会有一些其它的棋子,这些棋子是会憋马脚的,注意!】BFS好题。确实是好题。我出错的地方有几个:1、把蹩马脚的点和访问过的点混淆...
分类:
其他好文 时间:
2014-07-26 01:15:46
阅读次数:
433
后来一版作者又将最后一句改为:”要求在代码中只能使用一个字节存储变量“。我的解法:package android.zlb.java;/** * * @author zhanglibin * */public class TestXiangqi { public static void mai...
分类:
其他好文 时间:
2014-07-25 02:42:24
阅读次数:
209
一个将,一个帅,在各自的活动的9个格子里,但是两个人不能面对面,站在同一条直线上下面两种简单的解法#include int main(){ unsigned char i = 81; while (i--) { if (i / 9 % 3 == i % 9 % 3) continue; pr...
分类:
其他好文 时间:
2014-07-10 00:33:52
阅读次数:
188
中国象棋和国际象棋应该还是有些渊源的,的确二者的起源不同。中国象棋在战国以前就有了,而国际象棋流行的说法是起源于古印度。二者在千百年的历史长河中,其规则和形态也都是在一直变化的。中国古代很早就和印度有了往来,所以中国象棋在历史上遇到了国际象棋也是极为有可能的。二者相互影响。然后又各自发展,比如两种象棋的棋盘都是8x8的格子,两种棋中马和象都是一样的走法。而在古代国际象棋中的皇后的走法没有如今这么厉害,文献曾记载的皇后走法和中国象棋的士是相同的。同样在中国曾出土的唐代的象棋棋盘竟然是黑白格子相间的,这无疑与现...
分类:
其他好文 时间:
2014-07-05 23:38:30
阅读次数:
182
问题:题目:下过中国象棋的朋友都知道,双方的“将”和“帅”相隔遥远,并且它们不能照面。在象棋残局中,许多高手能利用这一规则走出精妙的杀招。假设棋盘上只有“将”和“帅”二子(如图1-3所示)(为了下面叙述方便,我们约定用A表示“将”,B表示“帅”):
A、B二子被限制在己方3×3的格子里运动。例如,在如上的表格里,A被正方形{d10, f10, d8, f8}包围,而B被正方形...
分类:
其他好文 时间:
2014-07-02 10:49:50
阅读次数:
266