lintcode 1410 · 矩阵注水【BFS 中等 vip】

题目链接,描述

https://www.lintcode.com/problem/1410

java 复制代码
给一个二维矩阵,每个grid的值代表地势的高度。水流只会沿上下左右流动,且必须从地势高的地方流向地势低的地方。视为矩阵四面环水,现在从(R,C)处注水,问水能否流到矩阵外面去?



输入的矩阵大小为n x n ,n <= 200。
保证每个高度均为正整数。
样例
样例1

输入: 
mat =
[
    [10,18,13],
    [9,8,7],
    [1,2,3]
] and R = 1, C = 1
输出: "YES"
解释: 
(1,1) → (1,2)→ 流出。
样例2

输入: 
mat = 
[
    [10,18,13],
    [9,7,8],
    [1,11,3]
] and R = 1, C = 1
输出: "NO"
解释: 
从(1,1)无法流向任何其他格点,故无法流出去。

思路

前置知识:BFS,Queue

参考代码

java 复制代码
public class Solution {
    /**
     * @param matrix: the height matrix
     * @param r: the row of (R,C)
     * @param c: the columns of (R,C)
     * @return: Whether the water can flow outside
     */
    public String waterInjection(int[][] matrix, int r, int c) {
        //BFS
        int n = matrix.length,m=matrix[0].length;
        Queue<int[]> queue = new LinkedList<>();

        queue.add(new int[]{r,c});
        int[][] dirs = {{-1,0},{1,0},{0,-1},{0,1}};
        while (!queue.isEmpty()){
            int[] poll = queue.poll();
            int x = poll[0],y=poll[1];

            if(x ==0 || x ==n-1 || y ==0 || y==m-1)
                return "YES";

            for (int[] dir : dirs) {
                int x1 = x+dir[0],y1=y+dir[1];
                if(x1>=0 && x1<n && y1>=0 && y1<m && matrix[x][y] > matrix[x1][y1]){
                    queue.add(new int[]{x1,y1});
                }
            }
        }
        return "NO";
    }
}
相关推荐
微三云 - 廖会灵 (私域系统开发)5 天前
企业大模型应用工程化思考:跳出 Demo 陷阱,构建「业务‑资产‑Agent」三层落地架构
人工智能·矩阵·重构
tryxr5 天前
矩阵的几种基础变换
java·数据结构·算法·矩阵
俗人六哥AI企业获客盈利系统6 天前
知识库才是AI落地的分水岭
人工智能·线性代数·矩阵·自动化
微三云 - 廖会灵 (私域系统开发)8 天前
私域电商多端商城系统架构实践:小程序 / APP / H5 一套后端如何落地
矩阵·重构·零售
微三云 - 廖会灵 (私域系统开发)8 天前
多端商城统一账号体系设计实践:小程序 / APP / H5 登录打通与账号合并
矩阵·重构·自动化·零售
萧西待水9 天前
奥赛一本通 1453 移动玩具
宽度优先
萧西待水10 天前
奥赛一本通 1451 棋盘游戏
算法·宽度优先
智购无人售货机厂家10 天前
2026自动售货机品类拓展逻辑:从饮料零食到鲜食药品文创的工程实践~YH
服务器·人工智能·单片机·线性代数·矩阵
IT小白杨11 天前
社媒多账号运营的环境隔离:一张图谱模型,解释清“为什么换IP还是被连坐“
经验分享·笔记·矩阵·指纹浏览器
镜像视界(浙江)科技有限公司12 天前
《视频孪生之上:二维展示终结,三维空间计算重构城市逻辑》——跨摄像连续表达 × 三角测量厘米级定位 × 动态轨迹建模,构建新一代城市空间
大数据·人工智能·算法·矩阵·音视频·空间计算