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

Leetcode 994. 腐烂的橘子 多源 BFS

原题链接: 994. 腐烂的橘子

在这里插入图片描述
在这里插入图片描述

class Solution {
public:int orangesRotting(vector<vector<int>>& grid) {int m=grid.size();int n=grid[0].size();int res=0,fresh=0;queue<pair<int,int>> q;for(int i=0;i<m;i++){for(int j=0;j<n;j++){if(grid[i][j]==2){q.push({i,j});}else if(grid[i][j]==1){fresh++;}}}if(!fresh) return 0;int num=q.size();vector<int> d1={-1,1,0,0};vector<int> d2={0,0,-1,1};while(!q.empty()){int tmp=0;res++;while(num--){pair<int,int> node=q.front();int x=node.first;int y=node.second;q.pop();for(int i=0;i<4;i++){int x1=x+d1[i];int y1=y+d2[i];if(x1>=0 && x1<m && y1>=0 && y1<n && grid[x1][y1]==1){grid[x1][y1]=2;tmp++;fresh--;q.push({x1,y1});}}}num=tmp;}return fresh>0 ? -1:res-1;}
};
http://www.dtcms.com/a/389979.html

相关文章:

  • 微硕WSP4982双N沟MOSFET,赋能汽车智能座椅通风系统
  • BMP280 气压计驱动
  • 速通ACM省铜第八天 赋源码(1709)
  • InnoDB索引结构与排序构建机制详解
  • mmpose可视化出错,图像与关键点对不上
  • Flutter 基本开发环境配置环境搭建
  • 【数控系统】第七章 NURBS插补
  • 某养老数字化协同办公平台网络方案解析
  • docker 容器终止时都做了什么?怎么优雅退出?
  • 苹果10月还有发布会?多款新品预曝光
  • wincc
  • 获取公网IP的方法
  • 苦瓜叶片病害检测数据集:2w+图像,9类,yolo标注
  • LlamaIndex入门
  • 基于RK3576+FPGA的无人机飞控系统设计
  • Redisson原理
  • PyQt6之日期与时间控件应用案例
  • css | 总结一下flex布局
  • c#里面的catch (Exception e)
  • 浅谈 CDN
  • 125、【OS】【Nuttx】【周边】效果呈现方案解析:分号与换行
  • CBB21-MPP电子元器件 RC容钏 金属化聚丙烯薄膜电容器 电子元器件技术解析
  • Day02 递归 | 46. 全排列、226. 翻转二叉树
  • [Spring Cloud][6] Eureka Server 搭建详解,与 Zookeeper 的区别
  • 前端性能优化完全指南:从入门到实战
  • 国产组态软件对工控行业的影响及作用
  • Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
  • 从把python里的一个函数变成接口到自动化测试平台的实现
  • LibreTV+cpolar:打造私人云影院的智能方案
  • 软考高级系统架构设计师之架构设计扩展篇(一)