题意: 'S' : 起点 'T' : 终点 '#' : 毒气室 'B' :氧气 'P':不消耗步数 每次经过毒气室需要一瓶氧气,氧气可以重复获得,但只能带五瓶氧气,问最少步数 solution: HINT:多维状态判重,多一维携带氧气瓶数量 没带氧气瓶的时候不能走毒气室# 携带超过5个跳过氧气B 相 ...
分类:
其他好文 时间:
2018-09-23 13:45:10
阅读次数:
177
这种搜索仅限于解决起始状态和结束状态可以互换的问题之中,也就是从头搜到尾和从尾搜到头是等价的 移动一个只含字母A和B的字符串中的字母,给定初始状态为(a)表,目标状态为(b)表,给定移动规则为:只能互相对换相邻字母。请找出一条移动最少步数的办法 NKOJ1688移字母游戏 一通好找啊 ...
分类:
其他好文 时间:
2018-09-11 14:52:03
阅读次数:
189
题解 很容易想出来最优策略是什么。 就是从n到1看到开着的灯就把它关了 我们预处理出当前状态把灯全部关闭后的最少步数cnt 然后我们的主人公就要瞎按。。。 设dp[i]代表当前状态最优解为i步时走到dp[i-1]用过步数的期望。 现在我们考虑如何转移到dp[i] 当我们这一步走到当前最优策略的一步时 ...
分类:
其他好文 时间:
2018-09-09 19:47:09
阅读次数:
231
<题目链接> 题目大意: 在一个立体迷宫中,问你从起点走到终点的最少步数。 解题分析: 与普通的BFS基本类似,只需要给数组多加一维,并且走的时候多加 上、下这两个方向就行。 2018-08-30 ...
分类:
其他好文 时间:
2018-08-30 23:29:45
阅读次数:
222
裸DP。感觉楼下的好复杂,我来补充一个易懂的题解。 f[i][0]表示走完第i行且停在第i行的左端点最少用的步数 f[i][1]同理,停在右端点的最少步数。 那么转移就很简单了,走完当前行且停到左端点,那么一定是从右端点过来的,那么从上一行左端点转移的话就是 f[i][0]=abs(上一行左端点的坐 ...
分类:
其他好文 时间:
2018-08-13 15:53:38
阅读次数:
102
Prime Path Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 26475 Accepted: 14555 Description The ministers of the cabinet were quite upset ...
分类:
其他好文 时间:
2018-07-08 20:05:22
阅读次数:
181
一句话题意:在8 * 8的棋盘上,输出用最少步数从起点走到终点的方案数据很小,可以广搜无脑解决定义数据结构体 移动时新旧状态传递 判断是否可以拓展 打标记,入队 完整代码 ...
分类:
其他好文 时间:
2018-06-05 17:46:34
阅读次数:
150
【传送门:BZOJ1085】 简要题意: 有一个5*5的棋盘,棋盘上有12个白棋子,12个黑棋子,和一个空格,每只棋子只能按照马走日的规则移动,求出最少步数达到以下状态 题解: DFS+A* DFS很容易做,不过时间复杂度太高 所以用A*来优化时间 A*的好处预判当前递归到结束得到的值,从而判断是否 ...
分类:
其他好文 时间:
2018-03-20 12:49:42
阅读次数:
147
1019: [SHOI2008]汉诺塔 题目:传送门 简要题意: 和经典的汉诺塔问题区别不大,但是题目规定了一个移动时的优先级: 如果当前要从A柱子移动,但是A到C的优先级比A到B的优先级大的话,那就只能从A移到C 题解: 首先我们回顾一下基础的汉诺塔问题: 要达到最少步数,那就先把A柱子上除最后一 ...
分类:
其他好文 时间:
2018-03-10 11:49:18
阅读次数:
156
//n从1开始,可以对n加1,或者加倍,要使n为2014的步数 1、2014的二进制为11111011110,需要的步数是2的最大幂次(加倍)加上最高位后面为1(加1)的个数。 2014>2^10; 10+8=18 链接:https://www.nowcoder.com/questionTermin ...
分类:
其他好文 时间:
2018-03-08 00:05:47
阅读次数:
158