试着用回溯法解,推理题
时间:12-01
来源:互联网
点击:
#include stdio.h
class TuiLi //推理类
{
//私有方法部分
protected:
SYSTEMTIME TIME; //标准系统时间存放结构体共8个成员16字节
struct FZ
{
int ys;
int yp;
int gj;
int cw;
int yl;
};//房子属性结构体
FZ Fz[5];//定义5间房子
int Biao[120][5];//定义组合表
int gj,ys,yl,cw,yp;//组合标志
int sz[25];
//解数独用
int sudu[81]; //记录回溯路径用
bool sudu_ji[81]; //用于标记已经被题目标示出来的值
int SD[9][9]; //数独棋盘
//解N皇后问题
int N;//用于输入皇后问题的解题规模本例子因为内存分配只能解33皇后以类的问题更改内存分配大小可以增大解题规模
int hh[1024]; //记录回溯路径用最多用于解33皇后问题
int HH[33][33];//皇后问题棋盘
//公共方法部分
public:
TuiLi(void);
~TuiLi(void);
void init_biao(void);//初始化组合表
void print(void);//屏幕输出
void gx(void);//刷新推理结果
int OK(void);//推理剪枝条件
int go(void);//推理题主入口方法
int ok_sd(void);//数独剪枝条件
int go_sd(void);//解数独人口点
void sd_in(void);//棋盘数据输入
void SD_in(void);//获取题目信息
void sd_out(void);//棋盘数据输出
void sd_print(void);//屏幕输出结果
int ok_hh(int m);//皇后问题剪枝函数
int ok_hh_sc(void);//最后检测
int go_hh(void); //皇后问题入口点
void hh_init(void);//初始化棋盘数据
void hh_out(void);//棋盘数据刷新
void hh_print(void);//输出结果
};
class TuiLi //推理类
{
//私有方法部分
protected:
SYSTEMTIME TIME; //标准系统时间存放结构体共8个成员16字节
struct FZ
{
int ys;
int yp;
int gj;
int cw;
int yl;
};//房子属性结构体
FZ Fz[5];//定义5间房子
int Biao[120][5];//定义组合表
int gj,ys,yl,cw,yp;//组合标志
int sz[25];
//解数独用
int sudu[81]; //记录回溯路径用
bool sudu_ji[81]; //用于标记已经被题目标示出来的值
int SD[9][9]; //数独棋盘
//解N皇后问题
int N;//用于输入皇后问题的解题规模本例子因为内存分配只能解33皇后以类的问题更改内存分配大小可以增大解题规模
int hh[1024]; //记录回溯路径用最多用于解33皇后问题
int HH[33][33];//皇后问题棋盘
//公共方法部分
public:
TuiLi(void);
~TuiLi(void);
void init_biao(void);//初始化组合表
void print(void);//屏幕输出
void gx(void);//刷新推理结果
int OK(void);//推理剪枝条件
int go(void);//推理题主入口方法
int ok_sd(void);//数独剪枝条件
int go_sd(void);//解数独人口点
void sd_in(void);//棋盘数据输入
void SD_in(void);//获取题目信息
void sd_out(void);//棋盘数据输出
void sd_print(void);//屏幕输出结果
int ok_hh(int m);//皇后问题剪枝函数
int ok_hh_sc(void);//最后检测
int go_hh(void); //皇后问题入口点
void hh_init(void);//初始化棋盘数据
void hh_out(void);//棋盘数据刷新
void hh_print(void);//输出结果
};
回溯法推理 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)