6*6的盘面数组,空缺位用零表示
要求输出成以下结果
    输入

000100
320004
654320
003456
405013
100040

输出

546132
321564
654321
213456
465213

1 3 2 6 4 5

public static void main(String[] args) {
//输入数组,没研究过数独怎么做的,就String了String [][] arr = {{"0","0","0","1","0","0"},{"3","2","0","0","0","4"},{"6","5","4","3","2","0"},{"0","0","3","4","5","6"},{"4","0","5","0","1","3"},{"1","0","0","0","4","0"}};//维度,长宽都是六int wd = 6;for(int i = 0;i < wd ;i++){         //初始化替换0,并按行消除String a1 = "123456";for(int j = 0;j < wd ;j++){a1 = a1.replace(arr[i][j],"");}for(int j = 0;j < wd ;j++){arr[i][j] = arr[i][j].replace("0",a1);}}fo_line(arr,wd);}public static void fo_line(String [][]arr,int wd){for(int i = 0;i < wd ;i++){         //按行消for(int j = 0;j < wd ;j++){if(arr[i][j].length()>1){for(int k = 0;k < wd ;k++){if(arr[i][k].length()<2 && arr[i][j].length()>1){arr[i][j] = arr[i][j].replace(arr[i][k], "");}}}}}if(fo_weisu(arr,wd)<1){//如果结果为0,所有元素都为一位fo_show(arr,wd);}else{fo_list(arr,wd);}
}public static void fo_list(String [][]arr,int wd){for(int i = 0;i < wd ;i++){         //按列消String res = "";for(int j = 0;j < wd ;j++){if(arr[j][i].length()>1){for(int k = 0;k < wd ;k++){if(arr[k][i].length()<2 && arr[j][i].length()>1){arr[j][i] = arr[j][i].replace(arr[k][i], "");}}}}}if(fo_weisu(arr,wd)<1){fo_show(arr,wd);}else{fo_line(arr,wd);}
}public static int fo_weisu(String [][]arr,int wd) {int ws = 0;                    //所有元素都为一位 输出0for(int i = 0;i < wd ;i++){        String res = "";for(int j = 0;j < wd ;j++){if(arr[i][j].length()>1){ws +=1;}}}return ws;
}public static void fo_show(String [][]arr,int wd) {for(int i = 0;i < wd ;i++){     //显示数组    String res = "";for(int j = 0;j < wd ;j++){res += arr[i][j]+" ";             }System.out.println(res);}
}

运行结果:

6*6数独,要求输出结果相关推荐

  1. 软件工程实践第二次作业——个人项目实战(数独)

    作业链接 1)Github项目地址 2)在开始实现程序之前,在下述PSP表格记录下你估计将在程序的各个模块的开发上耗费的时间 见 8). 3)解题思路描述 拿到题目后,阅读了项目需求,得知这次作业要求 ...

  2. 第一次软工作业(数独)

    第一次软工作业(数独) 1.该项目的github地址: https://github.com/514DNA/sudoku 2.各个模块耗费的时间: PSP2.1 Personal Software P ...

  3. (附代码)数独大作业【读取数独,解数独,生成唯一解数独(随机,特定形状,不同难度生成),玩数独】

    注:未经同意不要转载. 上学期简单的做了一个数独程序,实现了一些功能,想简单的为大家提供的思路. 为了避免某些情况出现,具体代码暂时先不发了,有不太懂的地方可以评论提问啊. 下面是我的具体报告: 一, ...

  4. 数独终局生成及残局求解

    文章目录 一.项目地址 二.各模块开发时间预估 三.学习过程.解题思路 3.1 开发语言及运行环境 3.2 项目要求分析 3.2.1 需求建模 3.2.2 数据流设计方法 3.3 解题思路 3.3.1 ...

  5. 软件工程基础课-个人项目-数独

    一.项目地址 二.PSP 三.解题思路 四.设计实现过程 4.1 代码风格规范 4.2 函数关系图 五.程序性能分析及改进 六.代码说明 七.单元测试与代码覆盖率分析 八.项目总结 8.1 个人的提升 ...

  6. 高级软件工程第三次作业:数独游戏界面功能

    此次作业基本引用了,第二次作业中使用的code.在保留第二次作业的功能基础上添加了两个文件,实现了界面游戏的功能. 完成数独游戏界面功能,代码能实现以下题目要求: 生成任意数量的数独题目并将数独棋局依 ...

  7. Python学习案例2——数独解题及出题程序

    第二个求解案例,我想到了数独.曾经有一段时间对数独求解非常感兴趣,在学习C++语言时也编写了数独求解程序.本次Python学习,要求比之前高一点,把出题程序也一起编写了吧. 1.数独简介 数独 (英语 ...

  8. 软件工程实践2017第二次作业-----个人项目实战之数独

    软件工程实践2017第二次作业-----个人项目实战之数独 最后一门考试2017.9.16 github地址:https://github.com/ssuo/shudu 题目地址:http://www ...

  9. 高级软件工程第二次作业

    1.Github地址 xinz 2.解题思路: 一开始拿到这道题的时候,对数独的概念不是那么清晰.通过题目中百度百科的概念,即被概括成满足以下三个条件的数字范围为1-9的棋盘:(1)每一行不能有重复的 ...

  10. 软件工程2017第二次作业

    GitHub:sudoku 解题思路描述 刚看到题目的时候,我去,好难.吃了根冰棍冷静下来,开始细细思考.题目的要求是随机生成N个不重复的数独棋盘,有两种方案:1.用数字1~9填满第一个九宫格,然后再 ...

最新文章

  1. 2017 ACM ICPC Asia Shenyang Regional Contest 题解(10 / 13)【每日亿题2 / 16】
  2. 怎么提高大表和小表的连接查询效率?
  3. Windows自动启动程序的十大藏身之所
  4. nuxt渲染html文件,Nuxt页面级缓存
  5. Java生鲜电商平台-微服务入门与服务的拆分架构实战
  6. 反射与泛型 java_Java的反射 和 泛型的一个问题
  7. 随机过程:指数分布、泊松过程、更新过程(renewal process)+大数定律
  8. 实验2-1-1 计算摄氏温度 (5 分)
  9. 新手到黑客的最全入门路径图(附全部学习资料下载)!
  10. 经济应用文写作【5】
  11. Deep Learning 学习笔记
  12. 【统计学】用Stata做时间序列分析
  13. Linux系统查看服务器版本方法
  14. 计算机网络运输层的简单总结与思考
  15. 【实例】用PHP制作一个简单的日历
  16. 结构体与联合体概念引入
  17. 区块链开发(五)搭建以太坊区块链浏览器
  18. 保护计算机系统与数据有什么方法,计算机系统开机和硬盘数据保护方法,与其数据保护模块...
  19. Javaweb15==mysql+mybatis+servlet+axios+fasetjson+vue+elementUI前后端分离,实现列表后端分页、模糊查询后分页、新增、单一/批量删除、修改
  20. 基于springboot,vue校园点餐系统

热门文章

  1. rx560d linux 图形设计,RX 560D对比RX 560哪个好?RX560D与560的区别对比详细评测
  2. CAT1 4G+以太网开发板腾讯云手机微信小程序显示温度和下发控制
  3. r语言degseq2_第二次RNA-seq实战总结(3)-用DESeq2进行基因表达差异分析
  4. ichariot测试路由器有线转发性能
  5. 读《鸟哥的linux私房菜》有感--第四天
  6. 英语教学计划软件测试,第一学期英语教学计划
  7. 缠中说缠,最好用的缠论画笔和中枢的指标公式 通达信用
  8. matlab 离散系统稳定性,基于LMI的离散系统非脆弱H∞滤波器设计(Matlab,程序)
  9. 孪生网络图像相似度_图像相似度比对
  10. 理解苏宁:互联网转型之战