[组合数学]关于一类棋盘的完美覆盖问题

这篇文章主要讲不规则和规则棋盘能否被1*2骨牌完美覆盖的问题
今天学了一点新的姿势,本人蒟蒻,神犇们看完不要D我

先来看一个经典的问题:8*8的棋盘是否能被1*2的骨牌完美覆盖?
答案是肯定的,我们只要随便摆一下就能够知道了。

那么去掉左上角和右上角的两个格子,还会有肯定的答案吗?
答案是否定的,不存在的。那我们是不是可以找到一种比较优美的证明方法来证明呢?
证明如下:将一个格子和相邻的格子染上不同的颜色,就会出现一种黑白相间的情况。1*2的骨牌肯定会覆盖不同的颜色,由于删去的两个刚好是相同的颜色,使得剩下的黑格白格数量不等,就一定不能。

那么如果黑白格数量相等是不是就一定能完美覆盖了呢?
答案是否定的,如果棋盘的其中一个连通块的集合数量是奇数的话,那就不行了。(比如故意把左上角旁边的两个挖掉,再随机挖掉两个和左上角同色的)

那什么时候一定有完美覆盖呢,看到完美、染色和黑白两色三个词,我们想到了一个东西-二分图。

我们将黑色格子的向相邻的白色格子连边,如果这个二分图存在完美匹配,那么棋盘就有完美覆盖了,感觉这个作法很巧,就记录在博客里啦!

代码嘛,有空的时候会更一下>_< ,最近有点忙,也怕自己的代码会写狗。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值