https://loj.ac/problem/2591 题目描述 给出数独的一部分,并且每个位置的有一定分数,数独的总分数等于所有位置上的数值乘以其分数,求最大分数 思路 首先直接爆搜肯定会T掉,我们就需要贪心的从一种较优解开始搜索。我采用的是一种较优的方法,先统计一遍每行已知的个数,然后在将行排序 ...
分类:
其他好文 时间:
2019-09-30 20:03:38
阅读次数:
125
题面 一个比较显然的事实是,在你玩数独的时候一般思路肯定是先把能确定的填上,比如样例一,第8行第8列,那个位置可能填的数特别少。 基于这种思路,我们先从容易确定的地方dfs,下一步走到下一个最容易确定的点,这样解答树能少枚举很多。 怎样判断一个点的确定度呢?当然是看看它的行填上了几个、列填上了几个、 ...
分类:
其他好文 时间:
2019-09-25 01:00:22
阅读次数:
73
解决数独 题目描述 编写一个程序,通过已填充的空格来解决数独问题。 一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 空白格用 '.' 表示。 一个数独。 答案被标成红色。 N ...
分类:
其他好文 时间:
2019-09-24 15:52:09
阅读次数:
60
说是爆搜,却还是有点技巧 首先数独应该有个想法,从最有可能填上数字的那些地方开始 也就是说哪些行0最少,就从那儿开始 为了最大限度地利用已有信息,就先把所有0的位置扣出来单独填 最后别忘了回溯就行 但是这种做法仍然过不了下面这个样例: 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 ...
分类:
其他好文 时间:
2019-09-22 19:20:33
阅读次数:
99
一道简单的模板题,用dfs去实现数独的填空 但是输入十分地麻烦 "传送门" 首先他没有告诉你到底有几组数据,9 9的元素并非都是数字,有一个?代表空 而且每行的两个相邻元素之间有一个空格,所以用while(~scanf())又不能行得通 基本核心代码已给出,修改输入部分 include includ ...
分类:
其他好文 时间:
2019-09-17 22:59:03
阅读次数:
152
一、什么是函数?
在shell脚本中,函数类似Linux系统中的命令别名,可以简化程序的代码量,让程序
更易读、易改、易用。
简单地说,函数的作用就是将程序里多次被调用的相同代码组合起来(函数体),并为其取一个名字(即函数名),其他所有想重复调用这部分代码的地方都只需要调用这个名字就可以了。当需要修改这部分重复代码时,只需要改变函数体内的一份代码即可实现对所有调用的修改,也可以把函数独立地写到文件里,当需要调用函数时,再加载进来使用。
分类:
系统相关 时间:
2019-09-17 19:10:53
阅读次数:
93
Solution 一道神仙暴力剪枝题,思路是在9*9的数独之上,再多添加3个剪枝 1.判断每个空格中,如果一个字母都填不了就返回,如果只能填一个,就填上并继续搜索 2.对于每个字母,在每行\列\16宫格中判断能填的位置,如果没有就返回,如果只有一个就填上,并继续搜索 3.在上述剪枝完成后,再用位运算 ...
分类:
其他好文 时间:
2019-09-15 21:14:51
阅读次数:
130
首先应该知道了。https://ac.nowcoder.com/acm/contest/625/E 这个数字必须是行,列,3X3小方块区域内,有且出现过一次的数字。 代码标记为 对于3X3的区域来说。有两种记录方式 然后就是简单的把数字给记录在数组里面 接下来,判断是否符合条件 然后dfs一下 最后 ...
分类:
其他好文 时间:
2019-08-31 00:57:48
阅读次数:
101
1. 步骤1 :将所有的值保存到 列 行 3 3矩阵中 2. 步骤2 : 1~9 判断那个值可以选 可以选代入 然后回复现场 class Solution { boolean col[][]; boolean row[][]; boolean cell[][][]; public void solv ...
分类:
其他好文 时间:
2019-08-24 15:01:24
阅读次数:
80
上次玩数独([旁友数独会伐啦?python秒解数独了解下伐啦?](https://blog.csdn.net/moonhmilyms/article/details/98711840))的事情给老王气的……这次我直接掏出了照片,看看他的反应。
小胖这次要人码结合,看看他闹哪样。 ...
分类:
其他好文 时间:
2019-08-19 10:05:14
阅读次数:
81