http://poj.org/problem?id=2676

递归深搜

#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<stdlib.h>
#include<math.h>
#include<iostream> using namespace std; #define N 100
#define INF 0xffffffff
#define memset(a,b) memset(a,b,sizeof(a)) int a[][]; struct node
{
int x,y;
} e[N];
int sum; int v1[N][N],v2[N][N],v3[N][N], ok; void DFS(int p)
{ if(p>sum)
{
ok=;
return;
} for(int i=; i<=; i++)
{
if(!ok)
if(v1[e[p].x][i]== && v2[e[p].y][i]== && v3[(e[p].x/)*+e[p].y/][i]==)
{
a[e[p].x][e[p].y]=i;
v1[e[p].x][i]=;
v2[e[p].y][i]=;
v3[(e[p].x/)*+e[p].y/][i]=; DFS(p+); // a[e[p].x][e[p].y]=0;
v1[e[p].x][i]=;
v2[e[p].y][i]=;
v3[(e[p].x/)*+e[p].y/][i]=;
}
}
} int main()
{
int T;
scanf("%d ",&T);
while(T--)
{
memset(v1,);
memset(v2,);
memset(v3,);
ok=sum=;
char str[N];
for(int i=; i<; i++)
{
scanf("%s",str);
for(int j=; j<; j++)
{
a[i][j]=str[j]-'';
if(a[i][j]!=)
{
v1[i][a[i][j]]=;
v2[j][a[i][j]]=;
v3[(i/)*+j/][a[i][j]]=;
}
else
{
sum++;
e[sum].x=i;
e[sum].y=j;
}
}
}
DFS();
for(int i=; i<; i++)
{
for(int j=; j<; j++)
{
printf("%d",a[i][j]);
}
printf("\n");
} }
return ;
}

Sudoku---hdu2676(数独DFS)的更多相关文章

  1. 【POJ - 2676】Sudoku(数独 dfs+回溯)

    -->Sudoku 直接中文 Descriptions: Sudoku对数独非常感兴趣,今天他在书上看到了几道数独题: 给定一个由3*3的方块分割而成的9*9的表格(如图),其中一些表格填有1- ...

  2. LeetCode:36. Valid Sudoku,数独是否有效

    LeetCode:36. Valid Sudoku,数独是否有效 : 题目: LeetCode:36. Valid Sudoku 描述: Determine if a Sudoku is valid, ...

  3. POJ 2676 Sudoku (数独 DFS)

      Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 14368   Accepted: 7102   Special Judg ...

  4. POJ 2676 - Sudoku - [蓝桥杯 数独][DFS]

    题目链接:http://poj.org/problem?id=2676 Time Limit: 2000MS Memory Limit: 65536K Description Sudoku is a ...

  5. POJ2676 – Sudoku(数独)—DFS

    Sudoku Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 24081   Accepted: 11242   Specia ...

  6. hdu 1426:Sudoku Killer(DFS深搜,进阶题目,求数独的解)

    Sudoku Killer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  7. HDU 1426 Sudoku Killer(dfs 解数独)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1426 Sudoku Killer Time Limit: 2000/1000 MS (Java/Oth ...

  8. poj Sudoku(数独) DFS

    Sudoku Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 13665   Accepted: 6767   Special ...

  9. HDU 1426 Sudoku Killer【DFS 数独】

    自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视. 据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品— ...

  10. HDU - 5547 Sudoku(数独搜索)

    Description Yi Sima was one of the best counselors of Cao Cao. He likes to play a funny game himself ...

随机推荐

  1. SQL 导出csv

    https://jingyan.baidu.com/album/4b07be3c466b5d48b280f37f.html?picindex=9

  2. Android(java)学习笔记158:多线程断点下载的原理(JavaSE实现)

    1. 为什么需要多线程下载?     服务器的资源有限,同时的平均地分配给每个客户端.开启的线程越多抢占的服务的资源就越多,下载的速度就越块. 2. 下载速度的限制条件? (1)你的电脑手机宽带的带宽 ...

  3. Pygame - Python游戏编程入门

    >>> import pygame>>> print(pygame.ver)1.9.2a0 如果没有报错,应该是安装好了~ 如果报错找不到模块,很可能是安装版本的问 ...

  4. Python3简明教程(二)—— 变量和数据类型

    关键字和标识符 下列的标识符是Python3的关键字,并且不能用于通常的标识符.关键字必须严格按照下面的拼写: False def if raise None del import return Tr ...

  5. socks5代理原理解析

    sock5代理的工作程序是:       1.需要代理方向服务器发出请求信息.       2.代理方应答       3.需要代理方接到应答后发送向代理方发送目的ip和端口       4.代理方与 ...

  6. 工作流activi链接地址

    http://topmanopensource.iteye.com/blog/1313865

  7. 用Jenkins构建项目实战

    登录Jenkins,新建任务 输入一个任务名称,选择一个项目类型 使用自定义工作空间:使该项目独立于系统的工作空间 自动从Git下载源码,点击添加可以增加凭证 日程表的参数: 第一个参数代表的是分钟 ...

  8. 9. InnoDB通用表空间

    9. InnoDB通用表空间 通用表空间是InnoDB 使用CREATE TABLESPACE语法创建的共享表空间.本节中的以下主题描述了常规表空间功能和功能: 通用表空间功能 创建通用表空间 将表添 ...

  9. Go:获取命令行参数

    一.Low B 方式 package main import ( "fmt" "os" ) func main() { fmt.Println("命令 ...

  10. python 2018/8/25

    # 含多空格字符串的分割 hello = "hello python hello"print(a.split(" ")) # ['hello', 'python ...