#include<stdio.h> int num,v[100][2],map[10][10]; bool judge(int x,int y,int k) {  int i,j,it,jt;  for(i=0;i<9;i++)  {   if(map[i][y]==k)    return false;   if(map[x][i]==k)    return false;  }  it=(x/3)*3;  jt=(y/3)*3;  for(i=0;i<3;i++)   for(j=0;j<3;j++)    if(map[i+it][j+jt]==k)     return false;  return true; }

int dfs(int cap) {  int i,x,y;  if(cap<0)   return 1;  for(i=1;i<=9;i++)  {   x=v[cap][0];   y=v[cap][1];   if(judge(x,y,i))   {    map[x][y]=i;    if(dfs(cap-1))     return 1;    map[x][y]=0;   }  }  return 0; }

int main() {  freopen("in.txt","r",stdin);  int t,i,j;  char c;  scanf("%d\n",&t);  while(t--)  {   num=0;   for(i=0;i<9;i++,getchar())    for(j=0;j<9;j++)    {     scanf("%c",&c);     map[i][j]=c-'0';     if(map[i][j]==0)     {      v[num][0]=i;      v[num++][1]=j;     }    }    dfs(num-1);    for(i=0;i<9;i++)    {     for(j=0;j<9;j++)      printf("%d",map[i][j]);     printf("\n");    }  }  return 0; }

shudupoj2676的更多相关文章

随机推荐

  1. ACM/ICPC 之 网络流-拆点构图(POJ2391)

    需要直接到达,因此源点经过三条边后必须要达到汇点,但为了保证网络流的正确性(路径可反悔),因此不可限制层次网络的最高层次为3,最好的方法既是让所有点拆分成两个点,一个点从汇点进入,一个点通向汇点,任意 ...

  2. linuxqq

    centos7下安装linuxqq出现一大堆依赖包都没有,腾讯搞的这个产品真不给力.寒心. >>>以下来自百度知道:http://zhidao.baidu.com/question/ ...

  3. ASM:《X86汇编语言-从实模式到保护模式》第9章:实模式下中断机制和实时时钟

    中断是处理器一个非常重要的工作机制.第9章是讲中断在实模式下如何工作,第17章是讲中断在保护模式下如何工作. ★PART1:外部硬件中断 外部硬件中断是通过两个信号线引入处理器内部的,这两条线分别叫N ...

  4. IE 中单元格的 colspan 属性在某些情况下会影响 TABLE 元素的自动布局

    今天在写一个jsp页面时,遇到一个如下的问题:在一个table中写了如下内容,table中定义了4列,在firefox中能正常显示,而在ie8中,显示不正常, 如下如图1:第二,三,四列宽度发生变化, ...

  5. SQL Server 2008 R2 企业版/开发版/标准版(中英文下载,带序列号)

    一. 简体中文 1. SQL Server 2008 R2 Developer (x86, x64, ia64) – DVD (Chinese-Simplified) File Name: cn_sq ...

  6. win7远程桌面连接总是显示凭证不工作解决方法总结

    使用远程桌面连接可以在网络的另一端控制某台计算机,对计算机进行实时操作,但有时会出现连接失败的情况,比如总是显示您的凭证不工作,下面是我对此问题解决办法的总结. 方法一: 1.在开始菜单内的运行框里输 ...

  7. LeetCode之237. Delete Node in a Linked List

    ------------------------------------------------ 因为不知道前序是谁,所以只好采用类似于数组实现的列表移动值, 又因为如果当前是最后一个元素了但是已经没 ...

  8. intellij idea 插件 ideaVim 用法

    intellij idea 插件 ideaVim - Genji_ - 博客园http://www.cnblogs.com/nova-/p/3535636.html IdeaVim插件使用技巧 - - ...

  9. JVM相关

    内存栅栏 1 what 说白了是一些cpu或编译器的一些同步指令 2 why cpu的cache快,而不去内存中取数据,在多线程并发中会读到cache的数据. 3 how 一般直接用关键字viloti ...

  10. jquery placeholder

    /* * @author ambar * html5 placeholder pollfill * - 使用绝对定位内嵌层 * - 也适用于密码域 * 目标浏览器: IE 6~9, FF 3.5 */ ...