当前位置: 首页 > news >正文

lc1034-边界着色

题目描述

  • 有一个二维地图,值代表颜色。
  • 给定一个点的坐标和一个备用的颜色
  • 这个点周围与它颜色一样的部分认为是一个整体
  • 给这块区域的最外层刷上备用颜色

示例

输入:grid = [[1,1],[1,2]], row = 0, col = 0, color = 3
输出:[[3,3],[3,2]]
输入:grid = [[1,2,2],[2,3,2]], row = 0, col = 1, color = 3
输出:[[1,3,3],[2,3,3]]
输入:grid = [[1,1,1],[1,1,1],[1,1,1]], row = 1, col = 1, color = 2
输出:[[2,2,2],[2,1,2],[2,2,2]]

题解

  • 思路:模拟、flood fill
    1. 使用 flood fill 找到这个颜色块
    2. 找的时候顺便标记边界
    3. 给边界上色
var (n, m inttarget intdx, dy = [4]int{-1, 0, 1, 0}, [4]int{0, 1, 0, -1}
)func colorBorder(grid [][]int, row int, col int, color int) [][]int {n, m = len(grid), len(grid[0])target = grid[row][col]st := make([][]int, n) // 0: default, 1: block, 2: borderfor i := 0; i < n; i ++ { st[i] = make([]int, m) }dfs(row, col, grid, st)for i := 0; i < n; i ++ {for j := 0; j < m; j ++ {if st[i][j] == 2 {grid[i][j] = color}}}return grid
}func dfs(x, y int, grid, st [][]int) {is_border := falsefor d := 0; d < 4; d ++ {r, c := x + dx[d], y + dy[d]if 0 <= r && r < n && 0 <= c && c < m && grid[r][c] == target {if st[r][c] == 0 {st[r][c] = 1dfs(r, c, grid, st)}} else {is_border = true}}if is_border { st[x][y] = 2 }
}
http://www.gsyq.cn/news/10581.html

相关文章:

  • ISO 26262的不同安全等级:ASIL-D ASIL-C ASIL-B ASIL-A
  • Gemini-2.5-Flash-Image-Preview 与 GPT-4o 图像生成能力技术差异解析​ - 教程
  • 鸿蒙ArkTS Canvas实战:转盘抽奖程序开发教程(基础到进阶) - 指南
  • 新学期每日总结(第2天)
  • US$128 Yanhua Mini ACDP Module6 MQB/MMC Instrument with Adapters
  • 9.23总结
  • VSCode C/C++ 开发环境配置
  • 补whk时的鲜花(持续更新)
  • newDay02
  • 代码随想录算法训练营第七天 | leetcode 454 383 15 18
  • etcd压测造成数据目录过大恢复 - 指南
  • springboot与vue中webSocket前后端连接障碍
  • 2025.9.23总结 - A
  • 实用指南:PHP 使用说明
  • CF520E Pluses everywhere 题目分析
  • java里面的IO流分为哪几种,他们的区别是什么呢
  • 达成度报告
  • 内网环境怎么安装软件(用 yum / apt 下载离线包并搬入内网)
  • tanh函数
  • P13617 [ICPC 2024 APC] Bit Counting Sequence
  • 打一局吗(60pts 解法)
  • 2025.9.23——1绿
  • 2025.9.23
  • 第6.2节 Android Agent制作<三>
  • LVS 服务器 知识
  • 【有源码】基于LTM模型+大素材的电信客户流失数据分析系统-基于机器学习的电信客户流失预测与分析框架-基于客户画像的电信流失用户识别与分析平台
  • Apifox-windows-latest.exe 安装教程(附详细步骤,一键下载安装指南)​
  • PyTorch图神经网络(四)
  • 告别材料乱堆、用电违规!AI 施工监测系统覆盖重点施工场景隐患
  • Computer Architecture