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

题目描述:

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

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

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

示例:



解题思路:

统计每行服务器个数,大于1直接添加到总数,若为1,查询该列是否存在另外至多一台服务器,若有,总数加一,若无,不操作。

相关代码:

java 复制代码
class Solution {
    public int countServers(int[][] grid) {
        int count=0,sum=0;
        for(int i=0;i<grid.length;i++) {
            count=0;
            for(int j=0;j<grid[i].length;j++) {
                if(grid[i][j]!=0) {
                    count++;
                }
            }
            if(count==1) {
                for(int j=0;j<grid[i].length;j++) {
                    if(grid[i][j]!=0) {
                        for(int z=0;z<grid.length;z++) {
                            if(grid[z][j]==1&&z!=i) count++;
                        }
                        break;
                    }
                }
                if(count==1) count=0;
                else count=1;
            }
            if(count>0) {
                sum+=count;
            }
        }
        return sum;
    }
}

代码效率:

相关推荐
范中勤几秒前
OSS 多文件打包回流上传:流式管道无落地 VS 临时磁盘落地,两种工业方案深度对比
java·高并发·zip·oss·架构选型
无毁的湖光-Al2 分钟前
解Bug之路-隔离故障点后业务不恢复?-热点Key处理与亚稳态故障
java·数据库·mysql
yi0114 分钟前
LeetCode 3. 无重复字符的最长子串|不定长滑动窗口:什么时候更新最大值?
笔记·python·算法·leetcode·双指针·滑动窗口
Eyfcom8 分钟前
快递管理系统中的电子围栏实战:高德与谷歌双平台技术选型与实现
java·后端·快递管理系统
Rain的Java大神之路9 分钟前
Java PDF导出,90%的人选错库!11个生产坑+选型+代码,一次讲透
java·后端·面试
Water_based11 分钟前
水性滚涂漆应用于滚喷机小五金件喷涂工艺详解
经验分享·笔记·产品经理
y1su11 分钟前
Leetcode 单调栈模板
java·开发语言·数据结构·算法·leetcode
郑州光合科技余经理24 分钟前
出海外卖平台:支付对接为什么要和下单收款分开
android·java·开发语言·前端·后端·php·ai编程
索尔~古德曼26 分钟前
CF(1400-1400&1300-1500)
算法
一只旭宝28 分钟前
树的家族全景:从二叉树到 B+ 树
数据结构