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

03最大岛屿的面积 图论

\100. 最大岛屿的面积

题目描述

给定一个由 1(陆地)和 0(水)组成的矩阵,计算岛屿的最大面积。岛屿面积的计算方式为组成岛屿的陆地的总数。岛屿由水平方向或垂直方向上相邻的陆地连接而成,并且四周都是水域。你可以假设矩阵外均被水包围。

输入描述

第一行包含两个整数 N, M,表示矩阵的行数和列数。后续 N 行,每行包含 M 个数字,数字为 1 或者 0,表示岛屿的单元格。

输出描述

输出一个整数,表示岛屿的最大面积。如果不存在岛屿,则输出 0。

输入示例
4 5
1 1 0 0 0
1 1 0 0 0
0 0 1 0 0
0 0 0 1 1
输出示例
4
提示信息

img

样例输入中,岛屿的最大面积为 4。

数据范围:

1 <= M, N <= 50。


#include<iostream>
#include<vector>
using namespace std;
int dir[4][2] = {{0,1},{0,-1},{-1,0},{1,0}};
void dfs(int& cnt,vector<vector<int>>& grid,vector<vector<bool>>& visited,int x,int y)
{//这种dfs的写法处理的是当前节点if(grid[x][y]==0 || visited[x][y]){return;}cnt++;  //一定是一块没有被访问过的陆地visited[x][y]=true;for(int i=0;i<4;i++){int nextx = x + dir[i][0];int nexty = y + dir[i][1];if(nextx<0 || nextx>=grid.size() || nexty<0 || nexty>=grid[0].size())continue;dfs(cnt,grid,visited,nextx,nexty);}
}
int main(void)
{int n,m;cin >> n >> m;vector<vector<int>> grid(n,vector<int>(m,0));vector<vector<bool>> visited(n,vector<bool>(m,false));for(int i=0;i<n;i++){for(int j=0;j<m;j++){cin >> grid[i][j];}}int result = 0;for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(grid[i][j]==1 && !visited[i][j]){int cnt = 0;dfs(cnt,grid,visited,i,j);result = max(cnt,result);}}}cout << result << endl;return 0;
}
  • 和前面的题目区别不大,就是统计每一块岛屿的面积,找出最大值
http://www.jsqmd.com/news/878992/

相关文章:

  • 如何精通专业级无损视频封装?5个tsMuxer高效工作流实战指南
  • YOLOv11农田害虫目标检测数据集-717张-pests-1
  • Mermaid在线编辑器:5分钟掌握专业图表制作的终极指南
  • 【限时解禁】ChatGPT早期融资PPT原始版(2022.03非公开版)+ 红杉批注手写稿扫描件:3处关键修改让估值提升2.3倍
  • 毕业设计 深度学习yolo11空域安全无人机检测识别系统(源码+论文)
  • 3分钟快速解锁:如何让你的索尼相机显示中文菜单?
  • 终极指南:快速掌握跨平台K210固件烧录工具
  • 如何高效配置多代理系统:智能代理切换方案详解
  • 2026西安上门回收黄金靠谱吗?全区域上门服务实测:从预约到到账,安全与时效一次讲透 - 西安闲转记
  • LiteDB.Studio:免费开源的LiteDB数据库终极GUI管理工具完整指南
  • 终极指南:如何用League Akari实现英雄联盟游戏流程完全自动化
  • GetQzonehistory:个人数字记忆的终极保护方案
  • Windows苹果设备连接问题终结者:一键安装驱动实现完美兼容
  • 【Veo生态整合终极指南】:2024年7大AI视频工具无缝对接实战手册(含API兼容性矩阵与避坑清单)
  • Real-ESRGAN-GUI终极指南:免费AI图像放大工具,让模糊图片秒变高清
  • 免费开源!NVIDIA显卡色彩校准终极方案:novideo_srgb完整指南
  • 如何快速配置游戏存档编辑器:面向玩家的完整指南
  • 【DeepSeek V2.3工具调用新特性首发解读】:支持多工具并行调度、状态感知重试与JSON Schema动态校验
  • 长期使用Taotoken Token Plan套餐对项目成本的优化效果
  • 智能自动化解决方案:免费获取Grammarly Premium高级Cookie的终极指南
  • 辽宁省调兵山寄快递省钱新思路!小众靠谱线上寄件渠道,跨省同城都划算 - 时讯资讯
  • 10分钟搞定Android Studio中文界面:告别英文困扰,让开发效率翻倍提升
  • 为内部知识库构建智能问答,利用Taotoken多模型能力选型优化
  • 为Claude Code配置TaoToken作为稳定后备API源防止服务中断
  • 辽宁灯塔市寄快递省钱指南|四款高性价比线上寄件渠道,日常寄件省心又省费 - 时讯资讯
  • 辽宁凌海寄件省钱新思路!多款小众靠谱寄件渠道,跨省发货性价比拉满 - 时讯资讯
  • ChatGPT翻译“看似流畅实则危险”:20年技术文档本地化总监亲测,7类高频误译已导致3起客户合规事故(含真实截图)
  • 辽宁凤城寄件省钱指南|避开高价网点,这几款全国靠谱寄件渠道省心又省钱 - 时讯资讯
  • 中小团队如何统一管理多个项目的AI模型调用与API密钥
  • mybatis-plus学习一