请问AI算法清该怎么考虑?请教各位高手!

abcxyz83 2006-04-26 08:15:23
这周的电脑报有一个编程题是25个棋子,一次可以选1到3个,最后为偶数的胜。这是人机对弈。
请问AI的算法怎么考虑?
...全文
206 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
abcxyz83 2006-05-03
  • 打赏
  • 举报
回复
同意danjiewu(阿丹)
这个没有必胜策略,我再好好想想如何实现.
现在结贴.
danjiewu 2006-04-29
  • 打赏
  • 举报
回复
Michaelgs(Michaelgs) ( ) 信誉:100 2006-04-28 23:45:00 得分: 0


先拿一个,然后每次保证剩下4的倍数个


没那么简单,看清楚题目。

想了一下,没想出必胜的策略。可以按照这个思路来:
考虑最后剩棋子的情况:
1个棋子,如果先手已有棋子数为偶数,则先手必输,反之则必赢。
2个棋子,先手必赢,不管已有棋子数奇偶。
3个棋子,先手必赢,不管已有棋子数奇偶。
4个棋子,如果先手已有棋子数为偶数,则先手必输,反之则必赢。
……

每个局面都存在一个必胜方,由所剩的棋子数与当前双方的已有棋子数的奇偶性决定。如果某个局面下,先手无论如何取子,所得到的局面都是先手(取完一次棋子后先手就交换了)输的话,则这个局面就是先手赢;否则就是先手输。
CD2006 2006-04-29
  • 打赏
  • 举报
回复
同意楼上的,这个题目应该没有必胜策略的
Michaelgs 2006-04-28
  • 打赏
  • 举报
回复
先拿一个,然后每次保证剩下4的倍数个
jp1984 2006-04-26
  • 打赏
  • 举报
回复
典型的Nim博弈。
danjiewu 2006-04-26
  • 打赏
  • 举报
回复
这个貌似算不上AI。

33,026

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧