博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
搜索 --- 数独求解 POJ 2676 Sudoku
阅读量:6863 次
发布时间:2019-06-26

本文共 1006 字,大约阅读时间需要 3 分钟。

 Sudoku

Problem's Link:   http://poj.org/problem?id=2676


 

Mean: 

 

analyse:

记录所有空位置,判断当前空位置是否可以填某个数,然后直接DFS,注意从后往前搜索,时间比正向搜快很多。16ms水过

Time complexity: O(n)

 

Source code: 

 

//  Memory   Time//  1347K     0MS//   by : crazyacking//   2015-04-10-14.30#include#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define MAXN 1000010#define LL long longusing namespace std;struct Node{ int x,y;};Node b[100];int g[9][9];int idx;bool flag;void input(){ char s[10]; idx=0; flag=0; for(int i=0;i<9;++i) { scanf("%s",s); for(int j=0;j<9;++j) { g[i][j]=s[j]-'0'; if(g[i][j]==0) { b[idx].x=i; b[idx].y=j; idx++; } } } idx--;}bool Check(int x,int y,int num){ for(int i=0;i<9;++i) { if(g[x][i]==num) return false; if(g[i][y]==num) return false; } int sta_x=x/3*3; int sta_y=y/3*3; for(int i=sta_x;i
View Code

 

 

 

转载于:https://www.cnblogs.com/crazyacking/p/4414547.html

你可能感兴趣的文章
linux用户和文件目录管理
查看>>
表空间数据结构研究_01
查看>>
mysql 编译安装
查看>>
使用KiWi Syslog Daemon构建日志服务器
查看>>
坐观 “爱情”
查看>>
linux apt-get proxy
查看>>
Spring学习总结1——bean的生命周期
查看>>
我的友情链接
查看>>
Apache Tomcat7+MySQL5.6配置
查看>>
char varchar nvarchar区别
查看>>
iOS原生定位和反编码
查看>>
华为交换机配置命令 华为QuidWay交换机配置命令手册
查看>>
如何解决JSP页面的乱码问题
查看>>
SQL中的Null值
查看>>
细看晶圆代工之争,纳米制程是什么
查看>>
东软java实训第一个项目人力资源管理
查看>>
我的友情链接
查看>>
ESXI GLusterFS ISCSI 构建低端虚拟化解决方案
查看>>
mysql使用
查看>>
[Ubuntu 12.10] Openstack 多节点安装--前期准备&&网络拓扑
查看>>