Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- CSS
- 인강
- 웹
- 코딩
- 건보필기
- 프로그래머스
- Linux
- 프로그래밍언어
- 필기후기
- 백준
- 한국재정정보원
- 확인문제
- algorithm
- 프로그래밍
- 부스트코스
- 웹프로그래밍
- 농은면접
- 수박수박수박수박수?
- HTML
- 정수내림차순으로배치하기
- 중소기업면접
- 필기
- java
- BOJ
- 연결요소의개수
- 후기
- 웹개발
- 알고리즘
- 이클립스
- 공부
Archives
- Today
- Total
공부하는 히욤이
2606번 : 바이러스 본문
2606번 : 바이러스
* 문제 출처 : 백준 알고리즘
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main_2606 { static int[][]map; static boolean[] visit; static int com; static int cnt; public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); com = Integer.parseInt(br.readLine()); //컴퓨터 수 int con = Integer.parseInt(br.readLine()); //연결되어 있는 컴퓨터 쌍의 수 map = new int[com+1][com+1]; //좌표 visit = new boolean[com+1]; //방문 여부 StringTokenizer st; for (int i = 0; i < con; i++) { st = new StringTokenizer(br.readLine()); int x = Integer.parseInt(st.nextToken()); int y = Integer.parseInt(st.nextToken()); map[x][y] = map[y][x] =1; //서로 연결 } cnt = 0; //바이러스 횟수 dfs(1); //1번부터 시작 System.out.println(cnt); } static void dfs(int depth) { //현재 컴퓨터 번호 if (visit[depth]) { //현재 컴퓨터 번호를 방문 했으면 돌아감 return; } if (depth >com) { //컴퓨터 번호가 컴퓨터의 수를 증가하면 돌아감 return; } //현재 컴퓨터 번호를 방문하지 않았다면 visit[depth] = true; //방문 체크 for (int i = 1; i <= com; i++) { if (!visit[i] && map[i][depth]==1) { //방문하지 않았고 현재 컴퓨터 번호와 연결되어 있는 경우 cnt++; //감염 횟수를 1증가 dfs(i); //i번째 컴퓨터 dfs } } } } | cs |
'Algorithm > BaekJoon' 카테고리의 다른 글
[BOJ] 2231. 분해합 (0) | 2019.08.03 |
---|---|
11724번 : 연결 요소의 개수 (0) | 2019.03.07 |
9498번 : 시험 성적 (0) | 2019.02.18 |
2558번 : A+B (0) | 2019.02.18 |
10430번 : 나머지 (0) | 2019.02.18 |