c语言检测数独是否正确,会数独的大佬请进。这是个判断九宫格数独是否正确的程序。...
发布日期:2021-10-31 14:06:55 浏览次数:9 分类:技术文章

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

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

int matrix[9][9];

int i,j,k;

int arr[9];

int index_of(int i, int a[]){

int idx = -1;

for(int i = 0; i < 9; i++){

if(i == a[j]){

return j;

}

}

return -1;

}

int validate_row(){

int cnt = 0;

for(i = 0; i<9; i++){

cnt = 0;

for(j = 0;j < 9;j ++){

arr[cnt ++] = matrix[i][j];

}

for(int i = 1;i< 10;i++){

if(index_of(i,arr) == -1){

return 0;

}

}

}

return 1;

}

int validate_col(){

int cnt = 0;

int i,j;

for(i = 0; i<9; i++){

cnt = 0;

for(j = 0;j < 9;j ++){

arr[cnt ++] = matrix[j][i];

}

for(i = 1;i< 10;i++){

if(index_of(i,arr) == -1){

return 0;

}

}

}

return 1;

}

int validate_unit(){

int cnt;

int i,j,k;

for(i=0;i<3;i++){

cnt=0;

for(j=0;j<3;j++){

arr[cnt++]=matrix[i][j];

}for(k = 1;k< 10;k++){

if(index_of(k,arr) == -1){

return 0;

}

}

}

for(i=3;i<6;i++){

cnt=0;

for(j=3;j<6;j++){

arr[cnt++]=matrix[i][j];

}for(k = 1;k< 10;k++){

if(index_of(k,arr) == -1){

return 0;

}

}

}for(i=6;i<9;i++){

cnt=0;

for(j=6;j<9;j++){

arr[cnt++]=matrix[i][j];

}for(k = 1;k< 10;k++){

if(index_of(k,arr) == -1){

return 0;

}

}

}

return 1;

}

int main()

{

int i,j,number;

for(i=0;i<9;i++)

{

for(j=0;j<9;j++){

scanf("%d",&number);

}

}

if(validate_row() == 1 ){

if(validate_col() == 1){

if(validate_unit() ==1){

printf("yes\n");

}else printf("no\n");

}else printf("no\n");

}else printf("no\n");

return 0;

}

转载地址:https://blog.csdn.net/weixin_39975900/article/details/117214956 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:最大子序列和算法C语言,最大子序列和O(N)算法简单分析『神兽必读』
下一篇:c语言求一点到多点最短路径长度,C语言迪杰斯特拉实现最短路径算法(14页)-原创力文档...

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年03月23日 14时14分22秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

创建物化视图commit_视图及范式 2019-04-21
函数传参字典_Python新手上车17:函数传递任意多个参数 2019-04-21
去掉数组最后一个元素_【一天一大 lee】在排序数组中查找元素的第一个和最后一个位置 (难度:中等) Day20201201... 2019-04-21
秦九韶算法递推公式_算法讲解之复杂度分析 2019-04-21
添加绝对路径_网站中如何添加绝对路径 2019-04-21
python房价数据分析波士顿代码数据_python数据分析-波士顿房价预测-Go语言中文社区... 2019-04-21
redis线程阻塞原因排插_Redis阻塞原因详解 2019-04-21
labview自动保存报表_基于LabVIEW的Excel报表的自动生成功能 2019-04-21
geotool 导出shp_Java 读取shape文件 2019-04-21
mysql 关联更新_MySQL UPDATE多表关联更新 2019-04-21
mysql call_mysql的call用法 call调用函数的例子 2019-04-21
python参数验证_参数验证,Python中的最佳实践 2019-04-21
python画多层网络_在pymn中修改多层网络图 2019-04-21
java net 安卓_android -------- java.net.UnknownServiceException 2019-04-21
java 密钥 aes 解密_Java中AES加密解密以及签名校验 2019-04-21
java树转化成图_Java 转换一组数据为树型数据 2019-04-21
java 底层ppt_Java 如何设置 PPT 中的形状排列方式 具体内容 2019-04-21
mysql service5.7_Mysql5.7服务下载安装 2019-04-21
mysql查看线程完整执行命令_MySQL-查看运行的线程-SHOW PROCESSLIST 2019-04-21
mysql 更新数据 字符串_批量替换 MySQL 指定字段中的字符串 2019-04-21