夢に僕らで帆を張って
来るべき日のために夜を超え

标签 IDA* 下的文章

November 7, 2019

洛谷P2534/AHOI2012 铁盘整理

题意给出一个数列,一次可以翻转$1 \dots i(i\in[1,n])$的数,求最少操作多少次使得数列单增数据范围:$1 \le n \le 50,1 \le r \le 100$题解先离散化,原数列转化为$1 \dots n$的一个排列此时进行一次翻转最多只能改变一对相邻数的差,而最终状态即为相邻数的差都为$1$因此将估价函数定为inline int eva(){ int res...
November 7, 2019

洛谷P2324/SCOI2005 骑士精神

题意给出一个初始棋盘,要求移动成目标棋盘,询问是否能在$15$步内做到;若能,输出最少步数;否则输出$-1$数据范围: 棋盘为$5 \times 5$题解移动马则考虑的情况过于复杂,因此选择移动空位迭代加深搜索:逐步加大搜索的步数;但对于$-1$情况仍然需要搜完增加估价函数,计算有多少个位置不同(即所需的可能最小步数)inline int eva(){ int res=0; ...