博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
E - Sudoku HDU - 5547(搜索)
阅读量:2352 次
发布时间:2019-05-10

本文共 1677 字,大约阅读时间需要 5 分钟。

#include 
#include
#include
#include
#include
using namespace std;char Map[10][10];int judge(int row, int col){ for(int i = 0; i < 4; i++) { if(Map[row][i] == Map[row][col] && i != col) { return 0; } } for(int i = 0; i < 4; i++) { if(Map[i][col] == Map[row][col] && i != row) { return 0; } } int arow = row; int acol = col; if(row % 2 == 1) { row -= 1; } if(col % 2 == 1) { col -= 1; } for(int i = row; i <= row + 1; i++) { for(int j = col; j <= col + 1; j++) { if(Map[arow][acol] == Map[i][j] && i != arow && j != acol) { return 0; } } } return 1;}void DFS(int cnt){ if(cnt == 4 * 4) { for(int i = 0; i < 4; i++) { for(int j = 0; j < 4; j++) { cout << Map[i][j]; } cout << endl; } return ; } int row = cnt / 4; int col = cnt % 4; if(Map[row][col] == '*') { for(int i = 1; i <= 4; i++) { Map[row][col] = i + ' 0'; if(judge(row,col) == 1) { DFS(cnt + 1); } Map[row][col] = '*'; } } else DFS(cnt + 1);}int main(){ int T; cin >> T; int t = 0; while(T--) { t++; for(int i = 0; i < 4; i++) { for(int j = 0; j < 4; j++) { cin >> Map[i][j]; } } cout << "Case #" << t << ":" << endl; DFS(0); } return 0;}[点击并拖拽以移动]

 

转载地址:http://mnwtb.baihongyu.com/

你可能感兴趣的文章
实现自定义布局的Notification
查看>>
AlarmManager的学习与实现
查看>>
解读Content Provider之一
查看>>
解读Content Provider之二
查看>>
自定义UI实例
查看>>
推荐一个不错的自定义UI
查看>>
fedora16 设置 gedit软件的默认编码
查看>>
S3C6410 存储器映射
查看>>
Linux 3.3.0移植到S3C6410开发板上之一
查看>>
Busybox支持中文的解决办法
查看>>
Spring中BeanFactory和FactoryBean有什么区别?
查看>>
牛年(2021)的KPI
查看>>
快速识别图片类型
查看>>
理解云原生
查看>>
docker常见问题答疑
查看>>
mac最简配置maven
查看>>
虚拟机性能监控与故障处理工具
查看>>
GIT的一些操作
查看>>
ZooKeeper 四字命令
查看>>
Mysql InnoDB锁问题
查看>>