GameDesign 板


LINE

程式写出来了 因为算block算到头昏,就动用暴力去解决了 使用的方式是..... 递回求解 function { int[] m=取得中岛的大小(); /* 像下面红色这种,在中央的我方棋子,我叫她中岛 XXOOO OO */ if(中岛大小>5) //大於五颗 { if(允许长连) return new Ans(5, 2); //传回连成五子的CODE else return new Ans(0, 0); //传回被挡住 } else if(中岛大小==5) //刚好五颗 { return new Ans(5, 2); //传回连成五子 } else //四子三子二子一子通通在这边判断 { Ans[] a=new Ans[2]; //两边分边检查 for(左边/右边) { int 中岛边界=取得中岛该边的边界; //如果该边是空白,很好,没被阻挡,尝试落子。 if(中岛边界往外推一格 == 空白) { //在该空白点落子,建立下一节点 Counter next=new Counter(落子後新的节点); //递回并记录答案 a[左边/右边]=next.递回呼叫同一方法; } else //被阻挡,传回block { a[左边/右边]=new Ans(0, 0); } } //排序,a[0] 要比 a[1] 大,如果一样大就比气的数目 if(a[1].land>a[0].land||(a[0].land==a[1].land&&a[1].lift>a[0].lift)) { Ans tp=a[0]; a[0]=a[1]; a[1]=tp; } //两边都被挡,没棋 if(a[0].land==0) return new Ans(0, 0); //两边下下去都形成五子的局面,就是活四 if(a[0].land==5&&a[1].land==5)return new Ans(4, 2); //只有一边下下去五子,就是死四 if(a[0].land==5&&a[1].land!=5)return new Ans(4, 1); //其他状况,把棋型-1後传回 return new Ans(a[0].land-1,a[0].lift); } } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.41.98.199
1F:→ ddavid:XD 10/19 00:16
贴一下运算结果: o 我方 x 敌方或是墙壁 这是落子点 ↓ :o:oo [3:2] [3:2] o o :o: o o [3:2] [3:2] oo o :o: o oo [3:2] [3:1] oo :o: oo [3:1] [3:1] ooo :o: ooo [3:1] [0:0] oo :o: oo [3:2] [3:1] x o:o:o x [3:1] [3:1] x o:o:o [3:2] [3:2] oo o:o:o [4:1] [3:1] ooo :o: oooo [4:2] [4:1] ooo :o: oooo [4:2] [4:1] ooo o:o:o ooo [4:2] [0:0] ※ 编辑: LaPass 来自: 114.41.98.199 (10/19 00:42)
2F:推 ddavid:0 1 2就是没棋、死(活一边)、活对吧 10/19 02:04
3F:→ LaPass:没错~ 10/19 12:28
4F:推 bleed1979:把例子对棋盘跑K&R会比recurive快吗?似乎可试试 10/20 02:02
5F:→ LaPass:请问K&R是什麽? 10/20 03:56
6F:推 bleed1979:抱歉我写错了。字串比对KMR Algorithm。 10/20 05:26
7F:→ bleed1979:意思是如果把每个例子当成pattern去跑棋盘的字串比对 10/20 05:27
8F:推 bleed1979:不过五子棋可以斜角延伸,比对上可能会较麻烦。 10/20 05:30
9F:→ LaPass:也还好,因为回圈可以这样跑 for(int i=0,j=0;略;i++,j++) 10/20 12:02
10F:推 ddavid:不不,连j都不用啊,你有i就好,因为你斜角加或减的值一样 10/20 16:23
11F:→ ddavid:所以座标用(x+i, y+i), (x+i, y-i)等等的去套就好XD 10/20 16:24
12F:→ LaPass:写好了,正在做WEB的UI~ 10/20 18:59







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP