题目地址:点击打开链接 题意:给你一个初始的密码和最后的密码求从初始到最后所需的最少的步数,每位数字可以加1,减1,和交换,9加1位1,1减1为9,第一位只能和右边的一位交换,最后一位只能和左边的一位交换 思路:隐式图的遍历,把能走的情况全走一遍并标记下来,直到到达最终状态 AC代码: #include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <q…

2015年10月7日 0条评论 0点热度 阅读全文

题目地址:点击打开链接 思路:用3维数组标记已走过的点,其实没有必要,因为2个杯中的水确定下来,剩下的一个点也就确定下来了,只用一个2维数组标记即可 这道题是一个一般隐式图的遍历 说到底就是搜索问题,把各种状态都走一遍,直到走到要的那种状态,用数组标记已走过的状态,如果走过就不用进队了,要是你非要进,只会浪费时间 状态转移无非6种情况 S->N S->M N->M N->S M->S M->N; AC代码: #include<cstdio> #include<c…

2015年7月26日 0条评论 0点热度 阅读全文