博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2020-11-22L && 999. 可以被一步捕获的棋子数
阅读量:3958 次
发布时间:2019-05-24

本文共 3062 字,大约阅读时间需要 10 分钟。

//  undefined

包装类执行完就销毁了

 

 

 

 

 

 

function numRookCaptures(board){  let xR = -1,      yR = -1,      count = 0;  for(let i = 0; i < 8; i++){    if(board[i].indexOf('R') != -1 ){      xR = i;      yR = board[i].indexOf('R');      break;    }  }  // up  for(let i = xR; i >= 0; i--){    if(board[i][yR] == 'p' || board[i][yR] == 'B') {      if(board[i][yR] == 'p'){        count++;      }      break;    }  }  // down  for(let i = xR; i < 8; i++){    if(board[i][yR] === 'p' || board[i][yR] == 'B'){      if(board[i][yR] == 'p'){        count++;      }      break;    }  }  // left  for(let j = yR; j >= 0; j--){    if(board[xR][j] == 'p' || board[xR][j] == 'B'){      if(board[xR][j] == 'p'){        count++;      }      break;    }  }  // right  for(let j = yR; j < 8; j++){    if(board[xR][j] == 'p' || board[xR][j] === 'B'){      if(board[xR][j] == 'p'){        count++;      }      break;    }  }  return count;}let arr0 = [[".",".",".",".",".",".",".","."],[".",".",".","p",".",".",".","."],[".",".",".","R",".",".",".","p"],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".","p",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]let arr1 = [[".",".",".",".",".",".",".","."],[".","p","p","p","p","p",".","."],[".","p","p","B","p","p",".","."],[".","p","B","R","B","p",".","."],[".","p","p","B","p","p",".","."],[".","p","p","p","p","p",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]let arr2 = [[".",".",".",".",".",".",".","."],[".",".",".","p",".",".",".","."],[".",".",".","p",".",".",".","."],["p","p",".","R",".","p","B","."],[".",".",".",".",".",".",".","."],[".",".",".","B",".",".",".","."],[".",".",".","p",".",".",".","."],[".",".",".",".",".",".",".","."]]let arr3 = [[".",".",".",".",".",".",".","."],[".",".",".","p",".",".",".","."],[".",".",".","R",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]let arr5 = [[".",".",".",".",".",".",".","."],[".",".","B","B","B","B","B","."],[".",".","B",".",".",".","B","."],[".",".","B",".","R",".","B","."],[".",".","B",".",".",".","B","."],[".",".","B","B","B","B","B","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]

方向数组方法更也不错

 

var numRookCaptures = function(board) {    let cnt = 0, st = 0, ed = 0;    const dx = [0, 1, 0, -1];    const dy = [1, 0, -1, 0];    for (let i = 0; i < 8; ++i) {        for (let j = 0; j < 8; ++j) {            if (board[i][j] == 'R') {                st = i;                ed = j;                break;            }        }    }    for (let i = 0; i < 4; ++i) {        for (let step = 0;; ++step) {            const tx = st + step * dx[i];            const ty = ed + step * dy[i];            if (tx < 0 || tx >= 8 || ty < 0 || ty >= 8 || board[tx][ty] == 'B') {                break;            }            if (board[tx][ty] == 'p') {                cnt++;                break;            }        }    }    return cnt;};

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://netzi.baihongyu.com/

你可能感兴趣的文章
HTTP请求之POST与GET区别
查看>>
SSM结合Redis
查看>>
优化数据库的八种方法
查看>>
Java Web服务收到请求时线程的情况以及session情况
查看>>
SSM配置文件信息加密实现
查看>>
@Produces注解
查看>>
谈谈序列化—实体bean一定要实现Serializable接口?
查看>>
实用小技巧之电脑如何滚动截屏/截取长图
查看>>
Eclipse离线安装Java Decompiler插件
查看>>
Http预请求options
查看>>
未来设计师的工作模式?从室内设计领域的实时设计说起 | Mixlab趋势
查看>>
智能设计 | MixAI 知识库 No.69
查看>>
通过研究微信文章的相关推荐逻辑 ,尝试生成指南| Mixlab设计黑客
查看>>
浏览器低成本实现免手提的用户体验,使用人脸、手势、姿态追踪 | Mix群聊
查看>>
这个世界上肯定有另一个我,做着我不敢做的事,过着我想过的生活 | MixAI 知识库 No.70...
查看>>
表情包数据挖掘 | Mix群聊
查看>>
如何阅读科研论文
查看>>
理解本真的REST架构风格
查看>>
10款免费且开源的项目管理工具
查看>>
java调用javascript :js引擎rhino
查看>>