标题: ARTS Week 4

分类: ARTS

tags: ARTS

Nov 18, 2019 ~ Nov 24, 2019

Algorithm

深入优先搜索-马遍历棋盘

要求:给定一个n * m的棋盘,左上角为(0, 0),马的初始位置为(x, y),找到所有方案使得马不重复地遍历棋盘,输出所有方案

思路

马走‘日’字,因此有八种移动方案,分别为:

dir = [[-2,1], [-1,2], [1,2], [2,1], [2,-1], [1,-2], [-1,-2], [-2,-1]]

坐标(x, y)移动一步后的结果为(x+dir[i][0], y+dir[i][1])

马的移动需要受到以下两个条件的约束:

  1. 移动后的点仍要在棋盘上,即

    $ 0 \leq x+dir[i][0] \leq n-1 \(
    \) 0 \leq y+dir[i][1] \leq m-1 $
  2. 移动后的点是要为访问过的,即

    $ visited[x+dir[i][0]][y+dir[i][1]] $

实现

Python的实现代码如下:

def draw():
print('第', ans,'种方案:',history) def horse(x, y, step):
if step == num:
global ans, found
ans = ans + 1
found = True
draw()
else:
for i in range(8):
x_temp = x + dir[i][0]
y_temp = y + dir[i][1]
if 0 <= x_temp < n and 0 <= y_temp < m and visited[x_temp][y_temp] == 0:
history[step] = [x_temp, y_temp]
visited[x_temp][y_temp] = 1
horse(x_temp, y_temp, step+1)
visited[x_temp][y_temp] = 0

Review

Emacs is Sexy

文章介绍的Emacs好处和安装Emacs

  1. Why
  1. 安装
  1. 学习

    阅读自带的教程Ctrl+h t或者查看手绘图

    中文教程可以查看子龙山人的教程,链接

希望能开箱即用的用户,可以采用Spacemacs。至于 Spacemacs 如何安装,可以看我的这篇文章:Spacemacs 简单介绍及安装

Tips

python3 输入一行数字中间用空格相隔的读取方法,例如:s = '1 2 3 4 5',如何提取为数组 nums = [1,2,3,4,5]

#方法1
num = [int(n) for n in input().split()] #方法二
num = list(map(int, input().strip().split())) print(num)

Share

Spacemacs 简单介绍及安装

ARTS Week 4的更多相关文章

  1. KDE声音服务器 arts

    KDE声音服务器 arts arts介绍arts是KDE的核心声音系统,支持多音频流.全双工.网络声音请求.ALSA与OSS驱动后端.JACK声音服务器后端等扩展,它既是声音服务器,也 提供一套音频软 ...

  2. 【ARTS】01_21_左耳听风-201900401~201900407

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  3. 【ARTS】01_20_左耳听风-20190325~20190331

    zz## ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 ...

  4. 【ARTS】01_19_左耳听风-20190318~20190324

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  5. 【ARTS】01_18_左耳听风-20190311~20190317

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  6. 【ARTS】01_17_左耳听风-20190304~20190310

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  7. 【ARTS】01_16_左耳听风-20190225~20190303

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  8. 【ARTS】01_15_左耳听风-20190218~20190224

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  9. 【ARTS】01_14_左耳听风-20190211~20190217

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  10. 【ARTS】01_13_左耳听风-20190204~20190210

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

随机推荐

  1. java小项目之:植物大战僵尸,这个僵尸有点冷!内附素材源码

    Java小项目之:植物大战僵尸! <植物大战僵尸>是由PopCap Games开发的一款益智策略类单机游戏,于2009年5月5日发售,这款游戏可谓是无人不知无人不晓. 在我身边,上到40岁 ...

  2. Spring Cloud(一):服务注册中心Eureka

    Spring Cloud 基于 Netflix 的几个开源项目进行了封装,提供包括服务注册与发现(Eureka),智能路由(Zuul),熔断器(Hystrix),客户端负载均衡(Ribbon)等在内的 ...

  3. TensorFlow——卷积神经网络的相关函数

    在TensorFlow中,使用tr.nn.conv2d来实现卷积操作,使用tf.nn.max_pool进行最大池化操作.通过闯传入不同的参数,来实现各种不同类型的卷积与池化操作. 卷积函数tf.nn. ...

  4. vuex使用面板报 Unexpected token错误

    Module build failed: SyntaxError: D:/frontend/webtest/src/components/mutations.vue: Unexpected token ...

  5. Spring Boot2 系列教程 (五) | yaml 配置文件详解

    自定义属性加载 首先构建 SpringBoot 项目,不会的看这篇旧文 使用 IDEA 构建 Spring Boot 工程. 首先在项目根目录 src >> resource >&g ...

  6. CF - 高精度 + 贪心

    Last year Bob earned by selling memory sticks. During each of n days of his work one of the two foll ...

  7. 洛谷p1137 模拟退火

    题目链接:https://www.luogu.org/problem/P1337 以x为原点,将力分解成横纵方向的力,每次退火时单独对答案的横纵坐标进行判断是否更新答案 #include<ios ...

  8. crawler 听课笔记 碎碎念 3 关于python的细枝末节的回顾复习

    和廖雪峰大神的教程学了几遍后,还是出现了许多不足,于是就做一些回顾,列出一些python的细节问题,有一些就提一下,如果发现不清楚的话 还请移步https://www.liaoxuefeng.com/ ...

  9. windows命令行(终端)怎么复制粘贴

    原文地址:https://jingyan.baidu.com/article/335530daf96f3a19cb41c3f4.html 终端打开后,我们可以简单的ping一下,查看一下连接地址   ...

  10. 简单理解设计模式——享元模式-线程池-任务(tesk)

    前面在写到多线程的文章的时候,一直想写一篇关于线程池等一系列的文章,做一下记录,本篇博客记录一下设计模式中享元模式的设计思想,以及使用享元模式的实现案例——线程池,以及线程池的简化版——任务(tesk ...