前几天LP玩数独,玩到大师级各种被虐,我看了看说,分分钟帮你做出来,

结果当然没有做出来。

于是上网搜了下数独的解题代码,看了下C的代码,大多是递归之类的(如http://blog.sina.com.cn/s/blog_9e16dc4d01013s1y.html

于是想想,这种方法能不能用erlang实现呢?

尝试了一下,发现不行,因为2维数组,指针什么的在erlang完全没有,而且变量不变,所有要换个思路,既然erlang能够并发,那就并发的去填

sd_one是使用唯一填入法和隐式唯一填入法(基础摒除法)来修正要填入的数字集,如果sd_one,运行完毕(所有的填入可选值没有变化),就使用sd_guess去猜测剩下的所有填法,猜出来就给主进程发ok消息

至于变量不能变化的问题,开始我想用ets,结果发现数据不多,进程字典更快,然后一切很就是秒秒钟出来了

然后试了一下baidu里面号称很难的数独

o(^▽^)o,轻松解出来~~~

数独_erlang解题代码的更多相关文章

  1. 数独破解c++代码

    数独破解c++代码 #include <iostream> #include <cstring> #include <cstdio> #include <st ...

  2. 判断9X9数组是否是数独的java代码

    闲来无事,理了一下数独的判断逻辑,用java实现,代码如下 import java.util.logging.FileHandler;import java.util.logging.Level;im ...

  3. PKU 1001解题代码

    本来以前也写过,但是由于许多细节问题,没有AC,今天修改了一下,终于AC了,以前没有AC的具体原因总结了了一下,必须任何数的0次方都等于1没有考虑,还有就是首0和末尾0以及小数点没有处理好,下面贴代码 ...

  4. 极限编程,最强N皇后JAVA解题代码,4秒出15皇后,33秒出16皇后

    私人博客原文链接来自:http://www.hexcode.cn/article/show/eight-queen 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,循环控制及其优化 8皇后以 ...

  5. ACM/ICPC ZOJ1009-Enigma 解题代码

    #include <iostream> #include <string> using namespace std; int main() { int strwide; cin ...

  6. ACM/ICPC ZOJ1006-Do the Untwist 解题代码

    #include <iostream> #include <string> #include <stdlib.h> using namespace std; int ...

  7. ACM/ICPC ZOJ1003-Crashing Balloon 解题代码

    #include <iostream> using namespace std; int main() { int **array = new int *[100]; for ( int ...

  8. Codeforces Round #479 (Div. 3)解题代码

    A. Wrong Subtraction #include <bits/stdc++.h> using namespace std; int main() { int n,k; cin&g ...

  9. 一次Java解析数独的经历

    1. 背景 中午下楼去吃饭,电梯里看到有人在玩数独,之前也玩过,不过没有用程序去解过,萌生了一个想法,这两天就一直想怎么用程序去解一个数独.要去解开一个数独,首先要先了解数独的游戏规则,这样才能找到对 ...

随机推荐

  1. CentOS 7.6 安装 Weblogic 12

    http://download.oracle.com/otn/nt/middleware/12c/12213/fmw_12.2.1.3.0_wls_Disk1_1of1.zip java -jar f ...

  2. [daily] fedora用过光盘做dnf repo

    有时候上不了网,或者你在一个网络下行受限的鬼地方上班.可是你需要给你的server装一个包. 这个时候,不妨用一下安装盘吧! 如下: 与redhat下用yum的时候,是一样一样的. 步骤如下: 1,插 ...

  3. openERP笔记 自定义模块开发

    ##需求描述 输入和查询课程,把信息储存到课程对象里 课程包含以下信息:名称,价格,天数,开始日期,教师,学员 每个课程可以有多个学员,要记录学员的姓名.电话.电子邮件 课程可以添加教材和作业等文档附 ...

  4. Intellij IDEA注册激活破解

    1.2017年适用(2016.3.5到2017.2.4版均生效) 安装IntelliJ IDEA 最新版 启动IntelliJ IDEA 输入 license时,选择输入 [License serve ...

  5. shell脚本----周期压缩备份日志文件

    一.日志文件样式 二.目标 1.备份压缩.log结尾&&时间样式为“date +%Y%m%d”的日志文件(如:20170912.20160311等) 2.可指定压缩范围(N天前至当天) ...

  6. input type = file 上传图片转为base64

    项目背景是做图片识别,接口需要上传图片格式为base64格式的,react项目的相关代码: let reader = new FileReader();reader.readAsDataURL(e.t ...

  7. from dns.resolver import Resolver ImportError: No module named dns.resolver

    from dns.resolver import Resolver ImportError: No module named dns.resolver python2运行BBScan时提示: from ...

  8. Streaming从Spark2X迁移到Spark1.5 summary

    配置文件的加载是一个难点,在local模式下非常容易,但是submit后一直报找不到文件,后来采用将properties文件放在加载类同一个package下,打包到同一个jar中解决. import ...

  9. laravel自定义验证

    1.在控制器中直接写验证$this->validate($request, [ 'video_ids' => [ function($attribute, $value, $fail) { ...

  10. tensorboard窥视

    运行神经网络时,跟踪网络参数,以及输入输出是很重要的,可据此判断模型是否在学习,损失函数的值是否在不断减小.Tensorboard通过可视化方法,用于分析和调试网络模型. 使用tensorboard的 ...