关于本题 A* 的错误 请求撤下部分题解

P1379 八数码难题

@[DAMDAM](/user/759326) 估价函数不能把空位算进去,这样就不会出现估价值 > 真实值的情况。 这题数据水的离谱,<https://www.luogu.com.cn/discuss/572226> (甚至我写的好几个版本都能过你的数据)
by y_kx_b @ 2024-02-02 18:57:23


@[y_kx_b](/user/592895) 我不仅仅只造了一个数据,这只是一组对拍的错误数据而已
by DAMDAM @ 2024-02-02 19:25:42


现在我猜想是估价函数与 A* 写法的问题,估价就应该选取比较差异数个数,关键是 A* 写法应该是这样的,即在获取最新的表头后再标记,而不是再访问到而仅仅是这个结点时就标记,我猜想这样能获取最优解,这样不会出现所谓 set 中已经标记最优解的问题
by DAMDAM @ 2024-02-02 22:48:39


即 A* 算法不存在问题,但仍建议加强数据&撤下错误题解
by DAMDAM @ 2024-02-02 22:50:54


orz
by __ex @ 2024-02-03 16:11:41


A* 算法本身没有问题,但大部分人设计的估价函数有问题。h 函数可以定义为,不在应该在的位置的**棋子**个数。这样就忽略了空格,能得到正确的结果。@[DAMDAM](/user/759326) 你可以帮我看看 [这个](https://github.com/OI-wiki/OI-wiki/issues/5394#issue-2116469983)
by Planaria @ 2024-02-03 21:33:30


@[__ex](/user/389425) orz
by DAMDAM @ 2024-02-03 23:28:16


@[DAMDAM](/user/759326) 借楼,能否帮我拍数据卡掉那个离谱估价函数(就是直接套用 acwing 的终态)
by y_kx_b @ 2024-02-04 00:12:55


我去,oiwiki 代码那个 h 都写错了吗,这么恐怖现在才被发现
by y_kx_b @ 2024-02-04 00:14:33


@[y_kx_b](/user/592895) 大佬指下位置
by DAMDAM @ 2024-02-07 21:25:31


| 下一页