#include<iostream>
#include<fstream>
#include<stdexcept>
using namespace std;
static bool sign=false;
ifstream &open_file(ifstream &in, string &file)
{
in.close();
in.clear();
in.open(file.c_str());
return in;
}
class sudo
{
public:
void getArray();
bool checkArray(int num, int i, int j);
void fillArray(int n);
friend ifstream &open_file(ifstream &in, string &file);
void displayArray();
bool Check(int n, int key);
void DFS(int n);
private:
int Array[9][9];
};
void sudo::getArray()
{
string file_name;
cout<<"plesae input the filename"<<endl;
cin>>file_name;
ifstream in;
open_file(in,file_name);
if(!in)
throw runtime_error("cannot open the file !");
int number;
for(int i=0;i<9;i++)
for(int j=0;j<9;j++){
in>>number;
Array[i][j]=number;
}
}
void sudo::fillArra
数独算法 C++
最新推荐文章于 2024-12-09 10:29:51 发布
这个博客介绍了一个用C++编写的数独求解程序。通过定义一个`sudo`类,程序实现了读取数独初始状态、检查单元格合法性、回溯填充空白单元格等功能。利用深度优先搜索(DFS)策略来解决数独问题,当找到解决方案时设置标志变量`sign`为真并返回。最后展示填充完整的数独数组。
开发板推荐:天空星STM32F407VET6开发板
超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印
开发板推荐:天空星STM32F407VET6开发板
超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印


821

被折叠的 条评论
为什么被折叠?



