목록알고리즘 (116)
코드굽는 타자기
링크 불러오는 중입니다... 문제설명 한칸씩 퍼지면서 한 덩어리가 되는 순간을 체크 문제풀이 영역퍼트리기 (BFS) 인접영역 체크 인접영역 합치기 (Disjoint Set - Union) 문제코드 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.util.ArrayDeque; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; /* 경로압축 O Union방식 weight */ public class Main { public static int[] parent; /** 음수면 root이면서 rank수 이므로 -1로 초기화 ..
링크 JUNGOL | 종교 > 문제은행 정수 n , m 이 주어진다. 다음 m 라인은 두 정수 i , j 가 주어진다. i, j 는 i번 학생과 j번 학생이 같은 종교를 가진 학생의 쌍이다(1≤i, j≤n). www.jungol.co.kr 문제설명 DisjointSet 개수 구하기 문제풀이 DisjointSet 개수 구하기 문제코드 import java.util.Scanner; public class Main1863_종교 { public static int[] parent; /** 음수면 root이면서 rank수 이므로 -1로 초기화 */ public static void makeSet(int v) { // 자기 자신을 가르킴 parent[v] = -1; } /** 포함된 집합의 root를 찾는다. */..
참고 : Union Find (Disjoint Set).pdf 개념 상호 배타적 집합(서로소 집합, Disjoint Set)만을 대상으로 한다. 따라서 교집합은 없다. 상호 배타적 집합을 찾아 합친다. 자료구조 LinkedList 같은 집합의 원소들은 하나의 연결 리스트로 관리한다 연결 리스트의 맨 앞의 원소를 집합의 대표 원소로 삼는다 x.parent = x의 상위 노드 Linked List representation of Disjoint Set Data Structures - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer science a..
링크 SWEA[4366] 문제설명 2진수 모든자릿수 경우∩3진수 모든자릿수 경우 문제풀이 HashSet으로 ∩ 검사 문제코드 import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashSet; import java.util.StringTokenizer; public class Solution4366_정식이의_은행업무 { public static void main(String[] args) throws IOException { System...