虽然我是程序员,但这里只介绍人类的思维方法。

这个方法我是从这里看到的:

https://www.learn-sudoku.com/visual-elimination.html

Most people try to solve Sudoku puzzles by picking a random empty cell and trying to figure out what goes in it. Unless you get lucky, this ends up being frustrating and tedious.

"Visual Elimination" is sort of the opposite of that. Instead of focusing on a particular cell, you focus on a number, and try to figure out the nine places it goes.

刚开始,大多数人可能随意选择一个空的格子,开始尝试看看什么数字可以填进去。 除非你运气好,否则,你最终可能会很沮丧。

视觉消除法(Visual Elimination)是一个反向的方法。 你聚焦在数字上,而不是空格。

That’s right – every number goes into every Sudoku puzzle exactly nine times. No more, no less. Each puzzle has nine 1s, nine 2s, nine 3s, etc.

Ok, now train yourself to look at just the larger squares in the puzzle. Think of the puzzle as a tic-tac-toe game, or a "Brady Bunch" grid (remember The Brady Bunch?). In other words, only focus on the nine large squares (called “blocks”).

训练自己把整个棋盘看成3X3格,类似tic tac toe(三连棋游戏)。 用其他话说,就是只聚焦在这9个宫里。

With me so far? Ok now, we pick a number – I like to start with "1". Because of the rules of the game, the puzzle must have exactly nine 1s, and there will be one in each tic-tac-toe square (block).

然后从数字1开始。

你需要训练自己忽略其他数字。 如下图

然后你就可以解出1的位置:

Practice this enough, and it will become second nature to you.

通过足够的训练,这会变成你的第二天性

Of course, there is no guarantee you will find all the 1s. If there were, you could always solve every Sudoku using this technique.

当然,没有保证你可以找到所有的1.

Once you have found every “1” you can find, simply move on to “2”. Do the same thing for “3”, “4”, etc – all the way through “9”.

你找到所有可以填的1后,就开始填2,3,4,一直到9

Once you have finished with “9”, don't get too excited - you are not done. If you used “Visual Elimination” to fill in any cells, you will want to go right back to “1” and try again. This is because every filled cell potentially changes things. You have only truly exhausted this technique when you go from “1” all the way through “9” without solving any new cells.

9处理完成后,不要太高兴。 你应该会到1再继续尝试,因为中间你填了一些数,改变了状态。 只有你重复1~9一遍,一个数字都不能填进去,你才算完成。

sudoku 心得 视觉消除法(Visual Elimination)的更多相关文章

  1. 论文:利用深度强化学习模型定位新物体(VISUAL SEMANTIC NAVIGATION USING SCENE PRIORS)

    这是一篇被ICLR 2019 接收的论文.论文讨论了如何利用场景先验知识 (scene priors)来定位一个新场景(novel scene)中未曾见过的物体(unseen objects).举例来 ...

  2. Windows10自适应和交互式toast通知[1]

    阅读目录: 概述 toast通知的结构 视觉区域(Visual) 行为(Actions) 特定场景下的Toast通知 带多内容的通知 带行为的通知(例子1) 带行为的通知(例子2) 带文本输入框和行为 ...

  3. 移动web开发之视口viewport

    × 目录 [1]布局视口 [2]视觉视口 [3]理想视口[4]meta标签[5]总结 前面的话 在CSS标准文档中,视口viewport被称为初始包含块.这个初始包含块是所有CSS百分比宽度推算的根源 ...

  4. 什么是viewport,为什么需要viewport

    viewport:视口,视觉窗口,显示区域.在显示面积上手机屏幕相对桌面显示器要小很多,在几年前(现在也如此)大部分网站都是为桌面显示器浏览而设计,很少考虑到适应手机屏幕,所以如果用手机浏览大多网站时 ...

  5. Web交互设计优化的简易check list

    Web交互设计优化的简易check list 00 | 时间: 2011-02-11 | 28,842 Views 交互设计, 用户研究   “优化已有产品的体验”,这是用户体验相关岗位职责中常见的描 ...

  6. X Window 程式设计

    X Window 程式设计 转   http://www.cppblog.com/zmj/archive/2007/05/18/24331.html X Window 程式设计 X Window 程式 ...

  7. 论文笔记之:Attention For Fine-Grained Categorization

    Attention For Fine-Grained Categorization Google ICLR 2015 本文说是将Ba et al. 的基于RNN 的attention model 拓展 ...

  8. ZK框架的分析与应用

    前言:本文是在下的在学习ZK官方文档时整理出来的初稿.本来里面有很多的效果图片和图片代码的.奈何博客园中图片不能粘贴上去,所以感兴趣的筒子们就将就吧.内容中,如有不好的地方,欢迎斧正! ZK框架的分析 ...

  9. [C#技术参考]在PictureBox 中绘图防止闪烁的办法

    开篇之前说点别的,马上年终了,好希望年终奖大大的,但是好像这次项目的展示很重要,所以这几天绷得比较近,但是真的没有感觉烦,就是害怕来不及.所以抓紧了.下面直接正题.说一下用到的东西,都是Google搜 ...

随机推荐

  1. Python - 实现矩阵转置

    有个朋友提出了一个问题:手头上现在有一个二维列表,比如[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]],现在要把该二维列表变成为[[1, 4, 7, 10 ...

  2. Spark排序方式集锦

    一.简介 spark中的排序一般可以使用orderBy或sort算子,可以结合负号.ASC/DESC和col进行简单排序.二次排序等情况 二.代码实现 package big.data.analyse ...

  3. C# 如何提前结束 Sleep ?

    好久没有更新博客了,都有点对不起这个账号了.这次跟大家分享的是一种编程思路,没什么技术含量,但也许能帮得到你. 我们经常会在程序程序中用到 Sleep 这个方法.Sleep 方法用起来非常简单,但是有 ...

  4. NumPy 之 存储文件和线性代数

    import numpy as np File Input and Output NumPy is able to save and load data to and from disk either ...

  5. MongoDB分片,唯一索引与upsert

    前言 分片,唯一索引和upsert,表面上看似没有直接联系的几个东西,到底存在怎样的瓜葛呢? 分片 为了保持水平扩展的有效性,分片功能必须保证各个片之间没有直接关联,不需要与其他分片交互就可以独立做出 ...

  6. 解决使用Microsoft Graph OAuth获取令牌时,没有refresh_token的问题

    今天在使用Microsoft Graph 的时候,发现按照官方文档,无论如何都不能获取refresh_token,其他都没问题,经过查询,发现是因为在第一步,获取code授权时,没有给离线权限(off ...

  7. TCP 协议简介-阮一峰(转载)

      TCP 协议简介 作者: 阮一峰 日期: 2017年6月 8日 TCP 是互联网核心协议之一,本文介绍它的基础知识. 一.TCP 协议的作用 互联网由一整套协议构成.TCP 只是其中的一层,有着自 ...

  8. Linux errno 与 Python

    以下均为Linux环境测试. 起因: 开发的一个程序,经常会由于内存不足而被kill掉,使用的是os.system函数执行的,返回值总是35072,当时没多想.后来由于一些原因,要模拟OOM 被kil ...

  9. Odoo启动运行参数(script运行参数,不是运行配置文件)

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826315.html 一:启动选项用在哪里 如果你是用Pycharm进行odoo二次开发的话,可以通过 R ...

  10. kubernetes(k8s)与其架构

    1. kubernetes简介 kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写.是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是 ...