摘要: 原题 题目链接 题目分析 bfs限制步数后爆搜就行了,答案用set维护(用来去重). 代码 阅读全文
posted @ 2019-08-22 21:22 VBL 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 原题 题目连接 题目分析 这道题的难点在于搜的技巧,仔细观察会发现有些规律,就如样例一 3 1 2 4怎么得到16的,事实上是3*c(0,3)+1*c(1,3)+2*c(2,3)+4*c(3,3),具体为什么是这样可以参考杨辉三角,看每个数字贡献多少值即可.因此直接用全排列搜,搜到答案的话肯定是字典 阅读全文
posted @ 2019-08-22 21:14 VBL 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 原题 题目链接 题目分析 题目要求将一组数组成两个数,注意不能有前导零,要求差绝对值最小, 所以要取两个位数最接近的数来做差,然后搜就完事了.搜法可以用全排列搜,由于只取两个数,就可以直接取前half个数作为一个数,剩下的作为一个数,做差就行了,这样全排列刚好能遍历所有情况. 代码 阅读全文
posted @ 2019-08-22 21:06 VBL 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 原题 题目链接 题目分析 这道题难点在于怎么处理地图标记问题.可以这么处理,在每个格子里记录被流星砸的最早时间,如果这个格子不会被砸到则记为INF,然后跑bfs的时候加入一个参数来记录当前跑到第几步,也就是当前时间为多少,当当前时间now+1<要走格子的时间时(也就是下一步走到这个格子是安全的),就 阅读全文
posted @ 2019-08-22 20:33 VBL 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 原题 题目链接 题目分析 注意题目给的条件,石头到终点会终止.石头碰到冰块会停止,冰块消失.石头滑出边界,游戏失败.石头必须在10回合内到达终点否则游戏失败.按照这个条件写个dfs,记录一下深度就行了. 代码 阅读全文
posted @ 2019-08-22 20:20 VBL 阅读(97) 评论(0) 推荐(0) 编辑