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

2023-08-24 LeetCode每日一题(统计参与通信的服务器)

2023-08-24每日一题

一、题目编号

1267. 统计参与通信的服务器

二、题目链接

点击跳转到题目位置

三、题目描述

这里有一幅服务器分布图,服务器的位置标识在 m * n 的整数矩阵网格 grid 中,1 表示单元格上有服务器,0 表示没有。

如果两台服务器位于同一行或者同一列,我们就认为它们之间可以进行通信。

请你统计并返回能够与至少一台其他服务器进行通信的服务器的数量。

示例 1:
在这里插入图片描述
示例 2:
在这里插入图片描述
示例 3:
在这里插入图片描述
提示:

  • m == grid.length
  • n == grid[i].length
  • 1 <= m <= 250
  • 1 <= n <= 250
  • grid[i][j] == 0 or 1

四、解题代码

class Solution {unordered_map<int, int> row;unordered_map<int, int> line;
public:int countServers(vector<vector<int>>& grid) {int m = grid.size();int n = grid[0].size();for(int i = 0; i < m; ++i){for(int j = 0; j < n; ++j){if(grid[i][j]){row[i]++;line[j]++;}}}int res = 0;for(int i = 0; i < m; ++i){for(int j = 0; j < n; ++j){if(grid[i][j] && (row[i] >= 2 || line[j] >= 2)){++res;}}}return res;}
};

五、解题思路

(1) 第一次遍历矩阵,用两个哈希表,row代表行,line表示列,遍历矩阵,如果当前位置有服务器,则该行服务器数量+1,该列服务器数量+1。

(2) 第二次遍历矩阵,如果该位置有服务器,则如果行或者列服务器至少有两台,则代表该位置的服务器能与其他位置至少一台服务器通信,那么结果res加一。

(3) 最后返回结果res即可。

http://www.lryc.cn/news/143356.html

相关文章:

  • 前端实习day35
  • Linux安装jupyter notebook
  • 【猿灰灰赠书活动 - 03期】- 【RHCSA/RHCE 红帽Linux认证学习指南(第7版) EX200 EX300】
  • 当 Tubi 遇到 Ruby
  • 【C++从0到王者】第二十四站:多态的底层原理
  • Java从入门到精通24==》数据库、SQL基本语句、DDL语句
  • 学习ts(十)装饰器
  • 如何在 Opera 中启用DNS over HTTPS
  • STM32 F103C8T6学习笔记13:IIC通信—AHT10温湿度传感器模块
  • QT基础使用:组件和代码关联(信号和槽)
  • TCP最大连接数问题总结
  • 【Docker】云原生利用Docker确保环境安全、部署的安全性、安全问题的主要表现和新兴技术产生
  • explain各个字段代表的意思
  • 【已解决】Windows10 pip安装报错:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x98
  • goland 中的调试器 -- Evaluate
  • 你知道公司内部维基到底有哪些功能吗
  • netdata监控服务器主机(包括Docker容器)
  • Mybatis学习|第一个Mybatis程序
  • 计算机网络MTU和MSS的区别
  • redis学习笔记 - 进阶部分
  • SE5 - BM1684 人工智能边缘开发板入门指南 -- 模型转换、交叉编译、yolov5、目标追踪
  • 基于Java+SpringBoot+vue前后端分离英语知识应用网站设计实现
  • vue使用vue-router报错
  • 编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。
  • js 类、原型及class
  • day-30 代码随想录算法训练营 回溯part06
  • txt、pcd、las、ply 格式点云基本的读写和显示 (附 python c++ 代码)
  • k8s节点pod驱逐、污点标记
  • 【项目 计网6】 4.17 TCP三次握手 4.18滑动窗口 4.19TCP四次挥手
  • 茶叶小笔记