判斷數獨是否正確

2021-07-13 02:38:29 字數 863 閱讀 1606

想必大家都玩過數獨吧(我竟沒玩過.....

錯誤!!!的思想:

1,,每列中包含1~9

2,每行中包含1~9

後來才知道原來只滿足這兩個條件並不能滿足每乙個九宮格中包含1~9

正解!!!:

1,,每列中包含1~9

2,每行中包含1~9

3.每個九宮格中包含1~9

**:#include

#include

#include

#include

using namespace std;  

int g[10][10];  

bool line[10][10];   //line[i][j]:判斷第i行數字j有沒有出現過  

bool column[10][10]; //column[i][j]:判斷第i列數字j有沒有出現過  

bool block[10][10];  //block[i][j]:判斷第i塊數字j有沒有出現過  

int t;  

bool judge()     

}  int flag = 1;  

for(int i =1;i<=9;i++)     

}  return flag;  

}  int main()     

}  bool flag = judge();  

if (flag) cout<

int blocknum =  (i-1)-((i-1) % 3)  +  ((j-1) / 3 + 1); 對這句話不太了解,這句的意思是計算這個數屬於第幾個九宮格,

block[blocknum][g[i][j]] = 1;  

這句的意思則是第幾個九宮格的第幾個數十存在的

(C語言)判斷數獨是否正確

數獨是源自18世紀瑞士的一種數學遊戲。是一種運用紙 筆進行演算的邏輯遊戲。玩家需要根據9 9盤面上的已知數字,推理出所有剩餘空格的數字,並滿足每一行 每一列 每乙個粗線宮 3 3 內的數字均含1 9,不重複。當然,肯定不會讓你用程式完成沒填好的數獨的。現在給你乙個9 9填滿了數的格仔,想讓你檢查一下...

程式設計題 判斷數獨是否正確

緒論目錄 判斷數獨是否正確 數獨定義 邏輯分析 矩陣遍歷 行遍歷列遍歷 總 測試 注 該文中用 0 表示空格,未填寫,因為方格中只能填入 1,9 話不多說,先上圖 如果你是第一次用程式的角度來做這道題,不用每乙個方格都去判斷方格所在行列以及矩陣無重複元素,這樣其實做了大量的重複操作,我們需要的是一步...

389 判斷數獨是否合法

5.5 很神奇的使用了map陣列,感覺自己的路子簡直是有點兒野。map陣列的定義方式為 hashmap map2 new hashmap 2 9 for int i 0 i 2 i 判斷數獨是不是合法,要判斷同一行,同一列,以及同乙個九宮之內是不是有相同的數。雖然ac了,但是提示我的編譯是有錯誤的。...