摘要: 题目: 给出n(1<n<10)个数字组成的序列,每次操作可以选取一段连续的区间将这个区间之中的数字放到其他任意位置。问最少经过多少次操作可将序列变为1,2,3……n。 思路: 利用IDA*来求解这个题目,首先每步操作最多可以减少3个位置错误的数字如下图(假设操作之后a、b、c都位于正确的位置) 则启 阅读全文
posted @ 2019-01-25 20:39 sykline 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 题目: 输入正整数n(1≤n≤1000),问最少需要几次乘除法可以从x得到xn ?在计算过程中x的指数应当总是正整数。 思路: dfs枚举次数深搜 注意: 1.指数如果小于0,就退出当前的搜索 2.now<<(MX-cur)<n即当前指数now乘以2^(MX-cur)还是小于n的话,就剪枝,因为乘以 阅读全文
posted @ 2019-01-25 10:22 sykline 阅读(144) 评论(0) 推荐(0) 编辑