js003-4方向8方向函数
1,求四方向或者8方向的周围的棋子。
/**
* pos 1-4, 1-8 4/8方向的周围
* @param {*} pos
* @param {*} dir
*/
var _nearChess = function (pos, dir) {
const row = 7; //横
const col = 7; //列
const x = pos % col;
const y = Math.floor(pos / row);
switch (dir) {
case 1: //up
if (y !== 0) {
return pos - col;
}
break;
case 2: //down
if (y !== col - 1) {
return pos + col;
}
break;
case 3: //left
if (x !== 0) {
return pos - 1;
}
break;
case 4: //right
if (x !== col - 1) {
return pos + 1;
}
break;
case 5: //left up
if (x !== 0 && y !== 0) {
return pos - col - 1;
}
break;
case 6: //right up
if (x !== col - 1 && y !== 0) {
return pos - col + 1;
}
break;
case 7: //left down
if (x !== 0 && y !== col - 1) {
return pos + col - 1;
}
break;
case 8: //right down
if (x !== col - 1 && y !== col - 1) {
return pos + col + 1;
}
break; default:
break;
}
return null;
}
2, A*等其他的算法,后面补充。
js003-4方向8方向函数的更多相关文章
- 交替方向乘子法(ADMM)
交替方向乘子法(ADMM) 参考1 参考2 经典的ADMM算法适用于求解如下2-block的凸优化问题( 是最优值,令 表示一组最优解): Block指我们可以将决策域分块,分成两组变量, 这里面 都 ...
- 快速构建Windows 8风格应用10-设备方向
原文:快速构建Windows 8风格应用10-设备方向 本篇博文主要介绍常用支持Windows 8操作系统设备的方向.如何获取当前设备方向.DisplayProperties类. 常用支持Window ...
- 弹性布局--flex方向
flex方向 flex方向由flex-direction特性决定,用于定义弹性布局模式.flex-direction共有4种模式:从左向右.从右向左.从上往下.从下往上. 主轴 主轴的起点与终点定义了 ...
- 【转】IT行业岗位以及发展方向
以下转自https://blog.csdn.net/qq_23994787/article/details/79847270 职业生涯规划的意义 1.以既有的成就为基础,确立人生的方向,提供奋斗的策略 ...
- 【Cocos2d-Js实战教学(1)横版摇杆八方向移动】
本教程主要通过搭建一个横版摇杆八方向移动的实例,让大家如何用Cocos2dx-Js来做一款游戏,从基础了解Cocos2dx-Js的基本实现原理,从创建工程,到各个知识点的梳理. 教程分为上下两讲: 上 ...
- (转)matlab练习程序(HOG方向梯度直方图)
matlab练习程序(HOG方向梯度直方图)http://www.cnblogs.com/tiandsp/archive/2013/05/24/3097503.html HOG(Histogram o ...
- MBProgressHUD 显示方向异常
一直在iphone上使用MBProgressHUD做提示信息视图.一直都没有什么问题,但用在ipad上使用时.却有时会出现显示方向不正常.如ipad屏幕是横的,但当MBProgressHUD出现时却依 ...
- POJ 题目1204 Word Puzzles(AC自己主动机,多个方向查询)
Word Puzzles Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 10244 Accepted: 3864 S ...
- 工作2-5年,身为iOS开发的我应该怎么选择进修方向?
前言: 跳槽,面试,进阶,加薪:这些字眼,相信每位程序员都不陌生! 但是方向的选择,却不知如何抉择!其实最好的方向,已经在各个企业面试需求中完美的体现出来了: 本文展示了2份面试需求,以及方向的总结, ...
随机推荐
- hadoop 2.6.0 LightWeightGSet源码分析
LightWeightGSet的作用用一个数组来存储元素,而且用链表来解决冲突.不能rehash.所以内部数组永远不用改变大小.此类不支持空元素. 此类也不是线程安全的.有两个类型參数.第一个用于查找 ...
- 2.Maven特点,Maven约定,建立第一个Maven项目
1 Maven是跨平台的项目管理工具.主要服务于基于java平台的项目构建,依赖管理和项目信息管理. 项目构建 清理à编译à測试à报告à打包à部署 理想的项目构建: 高度自己主动化 跨平台 可重 ...
- Redis Java调用
Redis Java调用 package com.stono.redis; import redis.clients.jedis.Jedis; public class RedisJava { pub ...
- java 经常使用測试框架
1. 经常使用单元化測试框架 junit4 , TestNG 能够通过注解 @Before @After @BeforeClass @AfterClass 分别作方法与类级的初始化与结束动作. tes ...
- ubuntu,jdk安装成功后,点击eclipse,提示信息A Java RunTime Environment (JRE) or Java Development Kit (JDK)
A Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Ecl ...
- hdoj--2709--Sumsets(数位dp)
Sumsets Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...
- hpuoj--校赛--面试难题(区间相交问题)
问题 F: 感恩节KK专场--面试难题 时间限制: 1 Sec 内存限制: 128 MB 提交: 294 解决: 39 [提交][状态][讨论版] 题目描述 有n个人要来面试学生会XX部门,要求面 ...
- 启动hadoop遇到的datanode启动不了
从截图上看是datanode的clusterID 和 namenode的clusterID 不匹配. 解决办法: 根据日志中的路径,cd /hadoop/data/dfs/ 能看到 data和name ...
- 有关 IE11
IE10/IE11 中 99% 的 CSS3 属性不需要写 -ms- 前缀: IE9/IE10/IE11 默认开启 GPU 加速,效果比同期 Chrome 版本(如 35)流畅: IE11 的字体渲染 ...
- 射击的乐趣:WIN32诠释打飞机游戏
一楼留给链接http://blog.csdn.net/crocodile__/article/details/11860129 楼上神贴,膜拜片刻...... 一.游戏玩法和已经实现的功能 1.打开游 ...