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

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

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

示例 1:

输入:grid = [[1,0],[0,1]]
输出:0
解释:没有一台服务器能与其他服务器进行通信。

代码

class Solution {public int countServers(int[][] grid) {int t=0;int[][] dir = new int[][]{{-1, 0}, {1, 0}, {0, 1}, {0, -1}};for(int i=0;i<grid.length;i++)for(int j=0;j<grid[0].length;j++)if(grid[i][j]==1){int temp=getServers(grid,i,j,dir);t+=temp==1?0:temp;}return t;}public int getServers(int[][] grid,int x,int y, int[][] dir) {if (x < 0 || x >= grid.length || y < 0 || y >= grid[0].length||grid[x][y]==-1||grid[x][y]==0)return 0;grid[x][y]=-1;int res=1;for(int i=1;i<= Math.max(grid.length,grid[0].length);i++)//dfs同一行同一列的for (int[] d : dir) {int nextX = i*d[0] + x, nextY = i*d[1] + y;res+=getServers(grid, nextX, nextY, dir);}return res;}
}

leetcode1267. 统计参与通信的服务器(dfs)相关推荐

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

    1267. 统计参与通信的服务器 Ideas 这题不想写题解了,想了半天的DFS和并查集,憋了半小时没写出来,一看题解跟我说计数. 我好难受.... Code Python from typing i ...

  2. LeetCode 1267. 统计参与通信的服务器(计数)

    1. 题目 这里有一幅服务器分布图,服务器的位置标识在 m * n 的整数矩阵网格 grid 中,1 表示单元格上有服务器,0 表示没有. 如果两台服务器位于同一行或者同一列,我们就认为它们之间可以进 ...

  3. wow服务器人数最新统计,魔兽世界怀旧服服务器人数统计 魔兽世界怀旧服人数比例查询...

    魔兽世界怀旧服服务器人数统计是游戏每个服务器玩家数量,大家想知道排队人数喔,那么魔兽世界怀旧服服务器人数统计有多少.魔兽世界怀旧服人数比例查询呢,跑跑车游戏网为大家带来介绍. *魔兽世界怀旧服服务器人 ...

  4. Java通信之服务器生猛上手

    Java通信之服务器生猛上手 一.生猛上手前的准备 Java其实是一门网络编程语言,这是和C语言和C++语言的一大区别,同时也是Java语言的一大特性:通过简单的Java语言代码就可以让多台计算机之间 ...

  5. 融合通信 RDS服务器接口定义1.9

    1. 组织机构(http) 1.1 查询组织结构 1.1.1 接口描述 机构查询 1.1.2 请求参数 英文名 中文名 是否必须 备注 pid 父机构id 否 精确匹配 cascade 级联查询 否 ...

  6. 通信(服务器客户端的群聊与网络画板)

    进入了通信阶段,感觉和之前学的内容差异很大,对这方面也没有之前那么感兴趣--有点缺乏热情进 度上不来--同时还在改进之前的线程游戏,很久没更新了.做了可以连接多个客户端,群发消息的服务 器,和可以同步 ...

  7. 嵌入式课程设计:socket通信模拟服务器客户端实现文件传送(基于c++语言)

            本次课程设计时间大概是两天半,磕磕碰碰,一路上遇到了很多的问题,也不断的查资料,想办法解决各种拦路的BUG,最后做出来的效果自己还是挺满意的,能够实现多台电脑之间模拟服务端,客户端,进 ...

  8. S7-200SMART PLC ModbusTCP通信(ModbusTcp服务器)

    S7-200SMART PLC 作为ModbusTCP通信(客户端)编程应用和程序详细讲解可以查看下面的博客,链接地址如下: S7-200SMART PLC ModbusTCP通信(多服务器多从站轮询 ...

  9. 云服务器部署mqtt协议通信,云服务器部署mqtt协议通信

    云服务器部署mqtt协议通信 内容精选 换一换 虚拟IP(Virtual IP Address,简称VIP)是一个未分配给真实弹性云服务器网卡的IP地址.弹性云服务器除了拥有私有IP地址外,还可以拥有 ...

最新文章

  1. 精选一套火爆B站的硬核资源,请笑纳!
  2. 爬虫之selenium控制浏览器执行js代码
  3. 初等数论--同余--MILLER-RABIN素性检测算法优化
  4. 做爱做的事,做有快感的事
  5. 点分治经典_动态点分治
  6. 【MySQL】明明加了索引,为何不生效?
  7. arcgis加载dwg显示一个点_shp文件转为dwg之后在arcgis下打开属性表有高程信息但在cad里面打开为何没高程 - 地学 - 小木虫 - 学术 科研 互动社区...
  8. Pr人像视频后期处理磨皮美白插件工具素材【汉化】
  9. JAVA导入gpx文件_用于Java的GPX解析器?[关闭]
  10. ThingWorx入门
  11. JavaApi:IO基础
  12. Android高德地图线优化,Android 接入高德地图SDK模块的优化点点滴滴
  13. 戒骄戒躁,笃实前行;
  14. 【IPv6】IPv6 NDP邻居状态详解
  15. 虚拟机VMware Workstation安装使用教程
  16. 创世茶小Y系列—茶元后·龙门飞瀑来袭
  17. 测试学习打卡第一天——测试与开发模型基本介绍
  18. Apache Ranger and AWS EMR Automated Installation Series (4): OpenLDAP + Open-Source Ranger
  19. 【虚拟化qemu】(一)--- qemu 虚拟化软件介绍与安装
  20. IAT 三连之什么是 IAT?

热门文章

  1. Linux进程通信之文件
  2. 《Leetcode | 02》
  3. 面试加分项!Android权限处理,手慢无
  4. COOKIE伪造登录网站后台
  5. [转帖]USB-C和Thunderbolt 3连接线你搞懂了吗?---没搞明白.
  6. Java构造函数的深入理解
  7. react事件处理函数中绑定this的bind()函数
  8. 恶意软件伪装“正规军”,撕开Booster Cleaner“画皮”下的真相
  9. C# winform 自定义皮肤制作
  10. docker ssh