【问题标题】:Creating Boggle game - linking coordinates to letters创建 Boggle 游戏 - 将坐标与字母联系起来
【发布时间】:2019-01-12 08:31:23
【问题描述】:

有一个 4x4 的棋盘,共有 16 个字母。在这个数组中[2,1]代表第三行第二列的字母。

const coordPairs = [
  [ [2, 1], [4, 1] ]
  [ [4, 0], [4, 1], [4, 2], [4, 3] ]
  [ [0, 0], [0, 1], [0, 2] ],
  [ [1, 0], [3, 0], [4, 0] ]
]

试图弄清楚如何将像 [2,1] 这样的一对链接到游戏板上的单个字母,该字母由 16 个字符串(字母)组成的数组表示。

最终目标是让函数根据您提供的游戏板和坐标为单词生成字符串。

JSFiddle 与 cmets:https://jsfiddle.net/8euxzgy2/4/

【问题讨论】:

  • 如果棋盘是 4x4,并且行/列从零开始,则数字 4 不应出现在成对中。
  • 但是要获取平面数组中的位置,只需 rowNum * rowSize + colNum

标签: javascript arrays indexing sub-array boggle


【解决方案1】:

假设这是索引方阵。可以接rows * coord[0] + coord[1]的号码:

let str = "abcdefghijklonop"
let rows = 4
const coordPairs = [[0, 0], [2, 1], [3, 1] ];
  
/*  a b c d
*   e f g h
*   i j k l
*   m n o p  */ 

letters = coordPairs.map(coord => str[coord[0]* rows + coord[1]])
console.log(letters)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-26
    • 1970-01-01
    相关资源
    最近更新 更多