xiaoing.com©

开花即结果 提问即答案

"编写JS代码:统计小红矩阵子区域的颜色种类数"
原始问题:

"编写JS代码:统计小红矩阵子区域的颜色种类数"

可以使用以下代码来实现:

function countColor(matrix, startX, startY, endX, endY) {
  let colorSet = new Set();
  
  for (let i = startX; i <= endX; i++) {
    for (let j = startY; j <= endY; j++) {
      colorSet.add(matrix[i][j]);
    }
  }
  
  return colorSet.size;
}

// 示例矩阵
let matrix = [
  ['红', '绿', '蓝'],
  ['红', '红', '绿'],
  ['蓝', '绿', '蓝']
];

// 示例询问
let startX = 0;
let startY = 0;
let endX = 1;
let endY = 2;

let colorCount = countColor(matrix, startX, startY, endX, endY);
console.log(colorCount); // 输出:3

在上述代码中,countColor函数接受一个矩阵和子矩阵的起始坐标和结束坐标作为参数。它使用一个Set数据结构来记录子矩阵中出现的不同颜色种类,最后返回Set的大小作为结果。通过遍历子矩阵中的每个格子,将其颜色添加到Set中,由于Set的特性保证了不会有重复的元素,因此最后返回的Set的大小就是子矩阵的颜色种类数。

"编写JS代码:统计小红矩阵子区域的颜色种类数"
https://www.xiaoing.com/zhidao/45378.html
AI / 模型DeepSeek
时间 / DATEAugust 27, 2023, 11:57 AM
语言zh-CN
IP / 区域天津市天津市