关注
//第一题 dfs import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;
public class test1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
Queue<Integer>[] queue = (LinkedList<Integer>[]) new LinkedList[num+1];
for (int i = 1; i <= num; i++){
queue[i] = new LinkedList<>();
}
for (int i = 1; i <= num; i++){
int k = scan.nextInt();
while (k != 0){
queue[i].add(k);
queue[k].add(i);
k = scan.nextInt();
}
}
boolean[] marked = new boolean[num+1]; //维护一个标记数组
int count = 0;
for (int i = 1; i <= num; i++){
if (!marked[i]) {
dfs(queue, marked, i);
count++;
}
}
System.out.println(count);
}
public static void dfs(Queue<Integer>[] queue, boolean[] marked, int v){
marked[v] = true;
for (int w : queue[v]){
if (!marked[w]) {
dfs(queue, marked, w);
}
}
}
}
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 如果春招能重来,我会___ #
3852次浏览 40人参与
# 想做Agent可以做哪些岗位? #
1918次浏览 23人参与
# 联宝杯大学生创新大赛,你的技术值得产业级答案 #
42435次浏览 496人参与
# 这个offer值得去吗? #
1571次浏览 22人参与
# 面试官拷打AI项目都会问什么? #
1585次浏览 80人参与
# 除了线上,还能去哪些地方投简历 #
2878次浏览 30人参与
# 你觉得最好用的AI编程工具是_ #
777次浏览 23人参与
# mt对你说过最有启发的一句话 #
115060次浏览 870人参与
# 你会因为行情,降低找工作标准吗? #
7106次浏览 78人参与
# 如何排解工作中的焦虑 #
324850次浏览 2793人参与
# 工作两年想退休了 #
272234次浏览 2057人参与
# 银行笔面经互助 #
195724次浏览 1324人参与
# 双非本科的出路是什么? #
230671次浏览 1657人参与
# 你的第一家实习公司是什么档次? #
73339次浏览 342人参与
# 你和你的mentor相处模式是__ #
5460次浏览 44人参与
# 你的mentor是什么样的人? #
61544次浏览 795人参与
# 科大讯飞求职进展汇总 #
384242次浏览 3069人参与
# 实习第一天,你在干什么 #
3406次浏览 25人参与
# 哪些公司在招寒假实习? #
95447次浏览 768人参与
# 秋招投递记录 #
416988次浏览 3283人参与
# 如果公司降薪,你会跳槽吗? #
160867次浏览 950人参与