文档章节

the Moore neighborhood

ricardohn
 ricardohn
发布于 2016/05/10 09:52
字数 181
阅读 8
收藏 0

求矩阵中任一点邻居为1 的数量:

def count_neighbours(grid, row, col):
    NEIGHBORS = ((-1, -1), (-1, 0), (-1, 1), (0, -1),
              (0, 1), (1, -1), (1, 0), (1, 1))
    count = 0
    for diff in NEIGHBORS:
        n_row = row + diff[0]
        n_col = col + diff[1]
        if 0<=n_row<len(grid) and 0<=n_col<len(grid[0]):
            if grid[n_row][n_col]:
                count+=1
    return count

if __name__ == '__main__':
    #These "asserts" using only for self-checking and not necessary for auto-testing
    assert count_neighbours(((1, 0, 0, 1, 0),
                             (0, 1, 0, 0, 0),
                             (0, 0, 1, 0, 1),
                             (1, 0, 0, 0, 0),
                             (0, 0, 1, 0, 0),), 1, 2) == 3, "1st example"
    assert count_neighbours(((1, 0, 0, 1, 0),
                             (0, 1, 0, 0, 0),
                             (0, 0, 1, 0, 1),
                             (1, 0, 0, 0, 0),
                             (0, 0, 1, 0, 0),), 0, 0) == 1, "2nd example"
    assert count_neighbours(((1, 1, 1),
                             (1, 1, 1),
                             (1, 1, 1),), 0, 2) == 3, "Dense corner"
    assert count_neighbours(((0, 0, 0),
                             (0, 1, 0),
                             (0, 0, 0),), 1, 1) == 0, "Single"

 

© 著作权归作者所有

共有 人打赏支持
ricardohn
粉丝 1
博文 76
码字总数 30236
作品 0
成都
verilog使用Mealy电路实现交通灯

Mealy电路实现十字路口交通灯 使用Verilog语言完成十字路口交通灯的设计与实现。用2个手拨开关表示南北向和东西向通道的状态,6个led灯从左到右依次显示A路口红灯,A路口黄灯,A路口绿灯,B...

__August__
2015/04/28
0
0
PING 遍整个互联网,PING 出一堆问题

安全公司Rapid7的HD Moore最近有了一项新爱好。他在家搭设了服务器群把全球所有的联网设备都ping了一遍,每天每台设备大概被ping了三次。由于担心设备发热过大引起家里着火,他还部署了许多制...

oschina
2013/04/26
8.3K
41
CMU计算机学院院长Andrew Moore离职,下一任院长人选未定

夏乙 发自 凹非寺 量子位 出品 | 公众号 QbitAI 企业挖角圣地卡耐基梅隆大学(CMU),今天又出了大新闻: 计算机学院院长Andrew Moore离职了。 CMU今天宣布,Andrew Moore即将离职,不再担任...

量子位
08/29
0
0
verilog使用Moore电路实现交通灯

问题描述 十字路口南北方向(B)有一组红绿灯,十字路口东西方向(A)有一组红绿灯。 TA,TB分别表示A,B走向是否有学生出现(为True时有学生)。通过当前两组红绿灯的状态和每5秒侦测到的T...

__August__
2015/04/28
0
0
李飞飞重回斯坦福,Andrew Moore接手谷歌云AI

来源:网络大数据 6 月,海外媒体爆出「李飞飞或将离开谷歌重返斯坦福」;两周前,CMU 官方发布消息称 CMU 计算机学院院长 Andrew Moore 即将离职。 今日,谷歌云博客发布的信息最终把二者的去...

人工智能学家
09/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Bash各类扩展详解

Bash各类扩展详解 Bash中主要包括大括号扩展、波浪号扩展、变量扩展、子命令扩展、文件名扩展和算数扩展。这些扩展组合在一起为Bash带来了极大的易用性。掌握这些扩展的用法和功能,能够为B...

小陶小陶
39分钟前
1
0
EventBus原理深度解析

一、问题描述 在工作中,经常会遇见使用异步的方式来发送事件,或者触发另外一个动作:经常用到的框架是MQ(分布式方式通知)。如果是同一个jvm里面通知的话,就可以使用EventBus。由于Event...

yangjianzhou
今天
5
0
OpenCV图像处理实例:libuv+cvui显示摄像头视频

#include <iostream>#include <opencv2/opencv.hpp>#define CVUI_IMPLEMENTATION#include <cvui.h>extern "C"{#include <uv.h>}using namespace std;#define WINDOW_NAM......

IOTService
今天
1
0
openJDK之JDK9的String

1.openJDK8的String 先来看下openJDK8的String的底层,如下图1.1所示: 图1.1 底层上使用的是char[],即char数组 每个char占16个bit,Character.SIZE的值是16。 2.openJDK9中的String 图2.1...

克虏伯
今天
1
0
UEFI 模式下如何安装 Ubuntu 16.04

作者:知乎用户 链接:https://www.zhihu.com/question/52092661/answer/259583475 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 针对UEFI模式下安装U...

寻知者
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部