ARTS Week 4
标题: 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])
马的移动需要受到以下两个条件的约束:
- 移动后的点仍要在棋盘上,即
$ 0 \leq x+dir[i][0] \leq n-1 \(
\) 0 \leq y+dir[i][1] \leq m-1 $ - 移动后的点是要为访问过的,即
$ 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
- Why
- 安装
- GNU/Linux:包管理器中就包含有Emacs
- Mac OS X:可以通过Homebrew或者Emacs For Mac OS X
- Windows:GNU官方
希望能开箱即用的用户,可以采用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
ARTS Week 4的更多相关文章
- KDE声音服务器 arts
KDE声音服务器 arts arts介绍arts是KDE的核心声音系统,支持多音频流.全双工.网络声音请求.ALSA与OSS驱动后端.JACK声音服务器后端等扩展,它既是声音服务器,也 提供一套音频软 ...
- 【ARTS】01_21_左耳听风-201900401~201900407
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_20_左耳听风-20190325~20190331
zz## ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 ...
- 【ARTS】01_19_左耳听风-20190318~20190324
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_18_左耳听风-20190311~20190317
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_17_左耳听风-20190304~20190310
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_16_左耳听风-20190225~20190303
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_15_左耳听风-20190218~20190224
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_14_左耳听风-20190211~20190217
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_13_左耳听风-20190204~20190210
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
随机推荐
- 小小知识点(二十二)显示屏与主机之间连接,出现无信号字样时,应检查是否正确选择集显和独显VGA接口
显示屏与主机之间连接,出现无信号字样时,应检查是否正确选择集显和独显VGA接口 通过VGA接口判断集成显卡和独立显卡.在台式机主机上,VGA接口竖着放置的说明是集成显卡,VGA接口横着放置的说明是独立 ...
- docker-覆盖网络
docker network rm docker_gwbridge Error response from daemon: Error response from daemon: network ne ...
- 低副瓣阵列天线综合2 matlab HFSS
接着继续研究阵列天线设计,得到了电流幅度分布或功率分布之后,就可以进行阵列设计或馈电网络设计了,之前利用HFSS仿真过单列的串馈天线,后面会继续复习熟悉一下,本次我找了一篇硕士论文利用威尔金森功分器来 ...
- 【linux学习笔记】
网上看一个两小时突击linux的教程,就想补充一下linux的知识.想着一天抽出俩小时立马就能学完呢,结果乱七八糟的事情拖了四五天,实际完成某项任务的时间超出预期完成任务的两部不止.好了," ...
- 【转】在Eclipse下搭建Android开发环境教程
本文将全程演示Android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本,希望大家喜欢. 一 相关下载 三 Eclipse配置 (1)Java JDK下载 1 安装andr ...
- 1、使用 as 而不要用 is
public class ShouldAsNotIs { public void ShouldAs() { object a = new ShouldAsNotIs(); var b = a as S ...
- Jenkins Pipeline Job构建配置
1.创建pipeline job任务,新建任务>输入任务名称>选择“流水线”>点击[确定] 添加描述,This is my first test pipelin ...
- lind.ddd博客笔记索引
先占位 整理 写博客呢 可以理解为一个动手的过程 写博客呢和实际动手也是一段差距
- 创建dynamics CRM client-side (四) - Namespace Notation in JS
我们在开发的时候会写很多functions. 但是这些functions 管理起来很麻烦. 微软内部建议我们使用namespace notation的形式管理我们的代码 // Converting f ...
- ios---apple mach-o linker error 报错解决
问题触发场景 在新xcode环境里配置了cocoapods,并运行了自己的项目.然后某日从其他地方clone了第三方项目,打开后,有了这个报错: 问题原因 1.用cocoapods装了第三方插件后,要 ...