亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

POJ 2676 Sudoku1 (DFS)

2019-11-11 03:27:29
字體:
來源:轉載
供稿:網友

Description

Sudoku is a very simple task. A square table with 9 rows and 9 columns is divided to 9 smaller squares 3x3 as shown on the Figure. In some of the cells are written decimal digits from 1 to 9. The other cells are empty. The goal is to fill the empty cells with decimal digits from 1 to 9, one digit per cell, in such way that in each row, in each column and in each marked 3x3 subsquare, all the digits from 1 to 9 to appear. Write a PRogram to solve a given Sudoku-task.

img

Input

The input data will start with the number of the test cases. For each test case, 9 lines follow, corresponding to the rows of the table. On each line a string of exactly 9 decimal digits is given, corresponding to the cells in this line. If a cell is empty it is represented by 0.

Output

For each test case your program should print the solution in the same format as the input data. The empty cells have to be filled according to the rules. If solutions is not unique, then the program may print any one of them.

Sample Input

1103000509002109400000704000300502006060000050700803004000401000009205800804000107

Sample Output

143628579572139468986754231391542786468917352725863914237481695619275843854396127

題意

給出一個16*16矩陣的部分格,其中0為空格,要求填充這些空格。

使矩陣滿足橫豎和九個3*3的方格內的數字都包含1~9這9個數字。

思路

很基礎的DFS,先存儲當前每行每列和每塊的數字狀態,然后從左上角開始搜索,遇到零的時候向該點填充一個當前行、當前列、當前塊都不存在的一個數字,若無法填充,則結束此層DFS,若可行,繼續搜索下一層,直到搜索到右下角,標記已經找到答案,此時結束所有DFS,注意在結束的過程中要保留當前所填充的矩陣。

AC 代碼

#include<iostream>#include<algorithm>#include<stdio.h>#include<string.h>#include<iostream>using namespace std;int mapp[9][9]; //存儲當前狀態bool isx[9][10],isy[9][10],iss[3][3][10],flag; //行、列、塊判斷void dfs(int y){ if(y>=9) //最后一個數是0的情況下若遞歸到這里,則說明全部填充完畢 { flag=true; return; } for(int i=y; i<9; i++) //從第y行開始,遍歷剩下的點 for(int j=0; j<9; j++) { if(mapp[i][j]==0) //一個需要判斷的點 { bool isc=false; //這一點是否可以被填充 for(int k=1; k<=9; k++) //1-9 if(!isx[j][k]&&!isy[i][k]&&!iss[i/3][j/3][k]) //三種情況都滿足 { isc=true; //假設可以填充 mapp[i][j]=k; //填充的數是k isx[j][k]=isy[i][k]=iss[i/3][j/3][k]=true; //標記該位置 dfs(j!=8?y:y+1); if(flag)return; //找到答案返回,放在這里可以防止在層層結束遞歸的時候狀態被還原 else isc=false; //下層遞歸失敗,標記該點不能填充 mapp[i][j]=0; //還原狀態 isx[j][k]=isy[i][k]=iss[i/3][j/3][k]=false; } if(!isc)return; } else if(i==8&&j==8) //最后一個點不是0的情況 { flag=true; return; } }}int main(){ int n; scanf("%d",&n); for(int ni=0; ni<n; ni++) { memset(isx,false,sizeof(isx)); memset(isy,false,sizeof(isy)); memset(iss,false,sizeof(iss)); flag=false; for(int i=0; i<9; i++) for(int j=0; j<9; j++) { scanf("%1d",&mapp[i][j]); if(mapp[i][j]) { isx[j][mapp[i][j]]=true; isy[i][mapp[i][j]]=true; iss[i/3][j/3][mapp[i][j]]=true; } } dfs(0); for(int i=0; i<9; i++) for(int j=0; j<9; j++) printf(j!=8?"%d":"%d/n",mapp[i][j]); } return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97视频免费在线看| 亚洲欧美一区二区精品久久久| 欧美日韩成人精品| 国产精品久久久一区| 亚洲天堂影视av| 国产精品久久久久久一区二区| 国产精品成人一区二区三区吃奶| 色综合视频一区中文字幕| 国产精品美女主播在线观看纯欲| 日本韩国欧美精品大片卡二| 2019中文字幕在线| 精品久久久国产精品999| 2021久久精品国产99国产精品| 欧美一级淫片videoshd| 色综合久综合久久综合久鬼88| 国产欧美精品日韩精品| 另类少妇人与禽zozz0性伦| 亚洲成人1234| 日韩小视频在线| 久久精品视频免费播放| 久久99精品久久久久久噜噜| 国产一区二区免费| 国产不卡av在线免费观看| 亚洲国产精品推荐| 日韩成人在线视频观看| 亚洲第一中文字幕在线观看| 国产一区二区三区直播精品电影| 国产亚洲精品久久| 久久久91精品| 成人免费在线网址| 日韩欧美国产高清91| 欧美乱人伦中文字幕在线| 最新亚洲国产精品| 亚洲国产精品高清久久久| 欧美性受xxxx白人性爽| 欧洲永久精品大片ww免费漫画| 亚洲成色999久久网站| 亚洲国产高清福利视频| 久久夜精品va视频免费观看| 九九九热精品免费视频观看网站| 国产精品2018| 欧美日韩日本国产| 成人欧美一区二区三区黑人| 久久成人人人人精品欧| 国产精品狼人色视频一区| 亚洲欧美日韩久久久久久| 国产91精品久久久久久| 精品亚洲夜色av98在线观看| 自拍偷拍亚洲在线| 91沈先生作品| 亚洲成人av片| 国产综合在线视频| 欧美在线日韩在线| 国产成人啪精品视频免费网| 久久福利视频网| 中文字幕一区二区三区电影| 国产一区二区三区在线播放免费观看| 国产一区玩具在线观看| 午夜免费在线观看精品视频| 久久精品国产综合| 美女久久久久久久| 亚洲精品美女久久| 91精品在线观看视频| 乱亲女秽乱长久久久| 国产免费一区二区三区在线能观看| 久久久久久成人| 欧美国产一区二区三区| 日韩中文理论片| 国产精品成人国产乱一区| 国产成人一区二区三区电影| 日韩动漫免费观看电视剧高清| 欧美成年人视频网站| 国产91精品久久久久| 日韩av在线免费看| 欧美色视频日本版| 精品国产91乱高清在线观看| 伊人一区二区三区久久精品| 色系列之999| 97av在线视频免费播放| 欧美日韩国产精品| 国产精品福利在线观看| 2025国产精品视频| 国产亚洲视频在线| 国产99视频在线观看| 国语自产精品视频在线看抢先版图片| 亚洲精品在线观看www| 国产精品av电影| 神马国产精品影院av| 国产精品视频久久| 亚洲欧美激情精品一区二区| 欧美日本啪啪无遮挡网站| 国内外成人免费激情在线视频| 国产精品视频内| 国产成人精品一区| 国产91精品不卡视频| www.日韩视频| 亚洲电影免费观看高清| 欧美中文在线观看国产| 国产精品久久久久免费a∨| 国产伦精品免费视频| 在线亚洲男人天堂| 国产在线观看不卡| 欧美视频中文字幕在线| 国产精品日韩一区| 538国产精品一区二区免费视频| www.亚洲一二| 国产999视频| 欧美视频免费在线观看| 欧美又大又硬又粗bbbbb| 国产热re99久久6国产精品| 欧美亚洲另类激情另类| 国产精品热视频| 人九九综合九九宗合| www.日韩.com| 国产精品日韩在线| 成人午夜一级二级三级| 日韩有码在线视频| 国产精品青青在线观看爽香蕉| 久久男人资源视频| 爱福利视频一区| 久久久爽爽爽美女图片| 亚洲国产欧美久久| 55夜色66夜色国产精品视频| 亚洲欧美制服第一页| 国产成人一区二| 韩国三级日本三级少妇99| 国产一区二区久久精品| 亚洲三级av在线| 都市激情亚洲色图| 日韩最新av在线| 亚洲人精品午夜在线观看| 成人h视频在线观看播放| 欧美在线国产精品| 久久久久999| 国产精品欧美亚洲777777| 国产精品精品视频一区二区三区| 中文字幕日韩电影| 亚洲男人天堂网站| 欧美激情性做爰免费视频| 中文国产成人精品| 亚洲人成网站999久久久综合| 欧美亚洲另类制服自拍| 国产精品欧美日韩| 国产欧美亚洲精品| 国产欧美在线观看| 最近2019中文字幕第三页视频| www.99久久热国产日韩欧美.com| 日韩精品极品毛片系列视频| 欧美精品电影免费在线观看| 久久久精品免费视频| 日韩欧美999| 日韩在线免费观看视频| 视频在线一区二区| 日韩电影免费在线观看| 日韩最新中文字幕电影免费看| 亚洲自拍偷拍视频| 国产综合视频在线观看| 久久亚洲精品成人| 亚洲第一视频在线观看| 欧美中在线观看| 91sao在线观看国产| 亚洲国产精品va在看黑人| 成人国内精品久久久久一区| 5278欧美一区二区三区|