Hdu1195 两个四位密码 问你最少多少步能到达 /*Huyyt*/ #include<bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define pb push_back using namespace std; typedef l ...
分类:
其他好文 时间:
2018-08-17 21:32:24
阅读次数:
170
题目大意:给你一个4位数的初始状态(只包含1~9),要求你变化成另一个4位数。 变化规则为:每次可给任意一位加1或减1(1减1变为9,9加1变为1),或交换相邻两个数位上的数字(第一位和最后一位不相邻)。 要你求出最少的变化次数。 解题思路:这道题很明显是一道BFS的题,只不过变化的操作复杂了点。我 ...
分类:
其他好文 时间:
2017-05-30 21:59:52
阅读次数:
174
问题链接:HDU1195 ZOJ2416 Open the Lock。
题意简述:输入测试用例数t,每个例子包括两个4个数字的整数(由1到9组成),一个为源,另外一个为目标。每次可以将其中任何一个数字+1或者-1运算,并且规定1-1=9,9+1=1;也可以将相邻2位数进行交换。问最少需要变换几次,才能从源变为目标。
问题分析:该问题可以用BFS来解决。在BFS搜索过程中,出现过的4位数就不...
分类:
其他好文 时间:
2016-08-11 07:28:31
阅读次数:
186
一道bfs的题目,不敢说水..好吧,这题的确是入门题....因为自己做了快2小时..还是因为思维考虑的不全面的缘故;一开始把加减的情况都写在了一个循环里...交了一遍,WA..检查了挺久才检查出来的....把过程打印出来也有不靠谱的地方...后来分析了一下逻辑...发现之前的修改会影响到后面对数字的...
分类:
其他好文 时间:
2015-05-07 07:32:29
阅读次数:
139
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1195 , 双向BFS或者直接BFS也可以过。 其实这道题只是单向BFS就可以过的,但是为了练算法,所以还是用了双向BFS来写。算法: 先预处理一下,从1111到9999的所有点进行构图(由于是1...
分类:
其他好文 时间:
2015-03-14 01:01:59
阅读次数:
190
ACM BFS Open the Lock hdu1195 暴力广度优先搜索...
分类:
其他好文 时间:
2014-04-29 13:48:20
阅读次数:
360
ACM BFS Open the Lock hdu1195 双向BFS...
分类:
其他好文 时间:
2014-04-29 13:35:21
阅读次数:
359