#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. Python基础四

    1. 集合 主要作用: 去重 关系测试, 交集\差集\并集\反向(对称)差集   2. 元组 只读列表,只有count, index 2 个方法 作用:如果一些数据不想被人修改, 可以存成元组,比如身 ...

  2. Unity 3D学习之《Unity 3D 手机游戏开发》1

    P10: 设置断点步骤02,在Project窗口右键(是在下图中的红色区域,点右键)选择[Sync Mono Develop Project],打开MonoDevelop编辑器 P11: " ...

  3. ABAP 客户报表

    *&---------------------------------------------------------------------* *& Report  ZSDR014 ...

  4. CodeViz代码可视化

    安装可以参见,http://blogimg.chinaunix.net/blog/upfile2/091119203927.pdf 结合pdf教程,这里说下注意事项: 1 ) 必须先安装GRAPHVI ...

  5. Revolving Digits(hdu 4333)

    题意:就是给你一个数字,然后把最后一个数字放到最前面去,经过几次变换后又回到原数字,问在这些数字中,比原数字小的,相等的,大的分别有多少个.比如341-->134-->413-->3 ...

  6. 会话控制:Cookie和session

    HTTP(超文本传输协议)定义了通过万维网(WWW)传输文本.图形.视频和所有其他数据所有的规则.HTTP是一种无状态的协议,说明每次请求的处理都与之前或之后的请求无关.虽然这种简化实现对于HTTP的 ...

  7. python selenium中使用ddt进行数据驱动测试

  8. 用VBox虚拟机安装Android 屏幕90度翻转竖屏设置

    在虚拟机中安装好Android之后,有一些Android应用(比如UC浏览器.UC桌面)不能安装.但更有一些程序是可以安装,却自动顺时间旋转了90度,操作和看起来非常不爽! 这个情况下,在Androi ...

  9. 8-04流程控制语句BEGIN ..END

     流程控制语句: 是用来控制程序流程的语句. 常用的流程控制语句的分类: 顺序结构:BEGIN...END 分支结构: IF ..ELSE 或CASE ..END 循环结构:WHILE 顺序结构 语法 ...

  10. ref的用法

    ref可以修改变量作为参数调用的值,但必须要初始化,不能在调用的函数中初始化 static void Main(string[] args) { ; Console.WriteLine("m ...