概述
标题:服务器广播 | 时间限制:1秒 | 内存限制:262144K | 语言限制: 不限
【服务器广播】服务器连接方式包括直接相连,间接连接。A和B直接连接,B和C直接连接,则A和C间接连接。直接连接和间接连接都可以发送广播。
给出一个NN数组,代表N个服务器,matrix[i][j] == 1,则代表i和j直接连接;不等于1时,代表i和j不直接连接。matrix[i][i] == 1,即自己和自己直接连接。
matrix[i][j] == matrix[j][i]。
计算初始需要给几台服务器广播,才可以使每个服务器都收到广播。
输入描述:
输入为N行,每行有N个数字,为0或1,由空格分隔,构成NN的数组,N的范围为 1<=N<=40
输出描述:
输出一个数字,为需要广播的服务器的数量
示例1:
输入
1 0 0
0 1 0
0 0 1
输出
3
public static void main(String[] args){
int res[][]={{1,1,0},{0,1,1},{1,0,1}};
int now[]= new int [res.length];
for(int i=0;i<now.length;i++){
now[i]=i;
}
for(int i =0;i<res.length;i++){
for(int j=0;j<res.length;j++){
if(i!=j&&res[i][j]==1){
int a =findFather(i, now);
int b =findFather(j, now);
if(a!=b){
now[a]=b;
}
}
}
}
int count =0;
for(int i=0;i<now.length;i++){
if(now[i]==i){
count++;
}
}
System.out.println(count);
}
public static int findFather(int i,int[]now){
if(now[i]==i)
return now[i];
return now[i]=findFather(now[i],now);
}
最后
以上就是苗条发夹为你收集整理的华为机试【服务器广播】的全部内容,希望文章能够帮你解决华为机试【服务器广播】所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复