吴昊品游戏核心算法Round4——连连看AI(用BFS+STL实现)(HDOJ1175)吴昊系列

随着Flash应用的流行,网上出现了多种在线Flash版本“连连看”。如“水晶连连看”、“果蔬连连看”等,流行的“水晶连连看”以华丽界面吸引了一大批的女性玩家。

规则如下:第一次使用鼠标点击棋盘中的棋子,该棋子此时为“被选中”,以特殊方式显示;再次以鼠标点击其他棋子,若该棋子与被选中的棋子图案相同,且把第一个棋子到第二个棋子连起来,中间的直线不超过3根,则消掉这一对棋子,否则第一颗棋子恢复成未被选中状态,而第二颗棋子变成被选中状态。

下面我来品析的这个AI实际上实现的是一个查询功能,属于连连看的一个小“作弊工具”,使用它之后,可以判断当前局面是否还有可以消去的“图形对”(实际上,该小工具还可以搜索到任意的一种这样的“图形对”并提示可以删去,当然,这些都是大同小异了)

我们利用BFS(宽度优先搜索)进行,并且,利用STL里面的队列queue结构来存储每一种结果。(这种或者类似的方法,在推箱子游戏的AI中也是比较常见的)

下面,我来给出HDOJ1175关于此问题的介绍和一些input和output。

ProblemDescription——“连连看”相信很多人都玩过。没玩过也没关系,下面我给大家介绍一下游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子),而且线的转折次数不超过两次,那么这两个棋子就可以在棋盘上消去。不好意思,由于我以前没有玩过连连看,咨询了同学的意见,连线不能从外面绕过去的,但事实上这是错的。现在已经酿成大祸,就只能将错就错了,连线不能从外围绕过(吴昊评注:这个也算是连连看的一个变种吧!)。玩家鼠标先后点击两块棋子,试图将他们消去,然后游戏的后台判断这两个方格能不能消去。现在你的任务就是写这个后台程序(吴昊评注:前台的绚丽靠UI和美工,后台的绚丽靠数据结构和算法)。

Input——输入数据有多组。每组数据的第一行有两个正整数n,m(0

Output——每一组输入数据对应一行输出。如果能消去则输出"YES",不能则输出"NO"。

亮点如下:

(1)上下左右四个方向的标识,采用一个二维数组,这也是一种常用技巧dir[4][2].

(2)采用STL队列容器,装载每一个可能的点。

(3)在BFS中,每相邻两个点放在一起判断,定期更新每个点处拐弯次数的最小值,这一点很不错。

THE END
1.宠物连连看手机版宠物连连看游戏下载免费宠物连连看游戏是非常好玩的休闲类型的连连看游戏,在这里玩家们能够找到超多的连连看的游戏模式进行玩耍,各种难度和模式在这里都能够找到,适合所有的人群玩耍,让玩家们能够在休闲的时候来上一把放松自己的心情.http://m.downcc.com/k/cwllk
2.下载宠物连连看31介绍游戏问答消除清一色宠物连。游戏里的萌萌哒宠物种类多到数不完,一层一层递进,通过一条线将两个相连,一条线...https://a.9game.cn/wenda/440858.html
3.龙斗士宠物连连看在哪问:龙斗士宠物连连看在哪?龙斗士宠物连连看怎么玩? 答:龙斗士宠物连连看小游戏,就在【欢乐广场】。 欢乐广场是各种小游戏的趣味乐园,里面还有王子大冒险、钓鱼、亚克寻宝等小游戏,每天玩一玩。 看看宠物连连看怎么玩? 点击相同的图案,之间的转弯不要超过2个,便可互消!在规定的时间内,完成连接,通过关卡。 https://m.news.4399.com/news/longdoushiwenda/201209-17-197731.html
1.宠物连连看免费,休闲,好玩,萌萌哒免费, 休闲, 好玩, 萌萌哒。宠物连连看是一款以宠物为主题的匹配消除类的休闲游戏,只要将图案相同的宠物用三根以内的直线连在一起就可以消除,规则简单容易上手。游戏速度节奏快,画面清晰可爱,适合细心的玩家。https://apps.apple.com/al/app/%E5%AE%A0%E7%89%A9%E8%BF%9E%E8%BF%9E%E7%9C%8B-%E5%85%8D%E8%B4%B9-%E4%BC%91%E9%97%B2-%E5%A5%BD%E7%8E%A9-%E8%90%8C%E8%90%8C%E5%93%92/id1042514594?see-all=developer-other-apps
2.安卓连连看单机版下载手机连连看小游戏大全手机连连看游戏一直都是大家必备的休闲精品,这类游戏题材多样,玩不腻,最适合无聊的时候打发时间了,这个小编深有体会,此次腾牛安卓网游戏速递特别为大家免费提供各类好玩的安卓手机连连看游戏免费下载,保证不会让您失望.https://www.qqtn.com/az/azllkyx/
3.潜入搜查官3下载潜入搜查官3官方下载潜入搜查官31宠物连连看经典版2002 五子棋单机版 Malody 僵尸杀手 数独 下载服务协议见页面底部 基本简介 你奉命潜入一名疑犯的府邸进行调查很庆幸,府内空无一人你专心收集罪证,突然听到屋外汽车驶近的声音迅速离开,却发现一个可怕的事实---你被锁在房间里了惊惧已然无用,这个时候,你需要的是冷静。冷静!http://www.onlinedown.net/soft/968059.htm
4.游戏作文(精选34篇)叮叮叮下课铃响了,我们只好意犹未尽地回到了教室。这个老鹰抓小鸡的游戏可真好玩呀!下次我还要玩这个游戏。 游戏作文 26 最近,我迷上了一种游戏叫“宠物连连看”,就是把相同的宠物图片给找出来连起来。 我一有时间就玩,“连连看”的影子似乎每时每刻都在我的脑海里晃动,不过几个月,我就从”连连看”“小学”...https://www.ruiwen.com/zuowen/youxi/1752236.html