![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 78
Avalon_cc
~~
展开
-
POJ 2676 (dfs)
题意:给一个9*9的数独,其中已经填了一些数了,需要填上剩下的空,如有多解随意输出一解即可。思路:由于这题初始给的数很多,所以直接dfs不用剪枝也可以过。数独需要每一行每一列,9个3*3的区域内不能有重复的数字。对于每一行每一列的判断很容易,关键在于子网格的判断。参考了大佬的思路,设子网格的编号为0-8,设一个小格(i,j)(0<i<9,0<j<9)的编号为k则3*(i/3...原创 2018-03-14 22:53:13 · 325 阅读 · 0 评论 -
POJ 3074(DLX)
同样是数独的题,不同于poj 2676和2918,这题给的空白格很多,直接用dfs会超时,需要进一步的优化。自己剪了半天的枝还是超时,搜了题解,发现了一种新的算法Dancing Link X(DLX),关于这个算法,推荐一篇博客https://www.cnblogs.com/grenet/p/3145800.html,这篇博客里写的很清楚了。这样,我们就能把求解数独转换为精确覆盖问题。关键在于如何...原创 2018-03-15 15:41:05 · 294 阅读 · 0 评论 -
poj 1077 (康托展开+bfs)
这是一个八数码问题,正好学习了康托展开,就做了这题,和hdu1043很像。康托展开并不难理解,其实就是一种hash。先上模板方便以后自己看。康托展开:int Contor(int str[],int n) { int ans = 0; for(int i = 0; i < n; i++) { int cnt = 0; for(int j...原创 2018-04-13 23:07:56 · 231 阅读 · 0 评论