- 2024-03-22洛谷 P1379 八数码难题 A* 题解
刚做完一道模板A*,看到这题我直接小脑萎缩了...阿米诺斯!这怎么用A*?!——刚开题的我beeeeeeeeeelike甚至比模板简单(这是绿的...)其实会是会但是纸张的是这玩意我不会搞估价函数我草!然后突然想到能不能把这个状态下有多少个数字不在目标位置作为估价函数?我喜欢\(IDA*\),有兴趣
- 2024-03-07P1379 八数码难题
原题链接题解1:朴素广搜注意细节code1#include<bits/stdc++.h>usingnamespacestd;intpoi[4]={-3,1,-1,3};intmain(){strings;cin>>s;queue<string>q;map<string,int>rec;q.push(s);rec[s]=1;while(q.size())
- 2023-06-18[刷题笔记] Luogu P1379 八数码
ProblemSolution题意非常明确,显然搜索,搜索的时候存储八数码可以用二维或者一维,但是个人感觉用二维更明了一些。需要注意去重,去重可以用set维护一下已经搜过的八数码,如果手写去重小心MLE具体实现的时候注意一下细节。Code#include<iostream>#include<cstdio>#include<al
- 2023-02-24P1379 八数码难题 题解
IDA*练习题由于题目问最小步数,很好想到可以用迭代式加深搜索,或是广搜,这里用的是深搜。枚举每次搜索的深度,也就是移动的步数,然后正常深搜,若达到目标解,返回\(\text{ture}
- 2022-12-23P1379 八数码难题(BFS)
P1379八数码难题 八数码问题就是在\(3\times3\)的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,我们用0来表示。给出一个初始局面,给
- 2022-10-11P1379 八数码难题
八数码难题题目描述在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出