유니온 파인드 개념상호 배타적 부분 집합(Disjoint Set : 서로소 집합)을 표현할 때 사용여러 노드가 존재할 때 두 노드를 같은 집합으로 묶어주고 같은 집합에 속하는지 판별 연산•Union (합집합) : 노드 x가 포함된 부분 집합과 노드 y가 포함된 부분집합을 합치는 연산•Find (x): 노드 x가 포함된 부분집합을 찾는 연산 최적화 기법1. Path Compression2. Union by Rank (Union by Height)3. Weighted Rule (Union by Size) 유니온 파인드구현초기화부모 노드를 지정할 parent 배열 선언 (코드로 구현할땐 편하게 p로 선언하겠다)parent를 자기 자신으로 지정하여 초기화n개의 원소가 각각 하나의 부분집합 이룸for(int ..
알고리즘공부
알고리즘 분석 정확성(correctness): 가능한 입력에 대해서 항상 옳은 답을 출력하는가? 자원(resources): 얼마나 많은 자원을 사용하는가? 자원은 알고리즘 실행 시간과 필요한 메모리의 양이 있다. 이 자원을 측정하기 위해 만든 것이 가상의 컴퓨터 RAM (Random Access Machine) 모델순차적으로 수행되는 보통의 컴퓨터에 기반을 두고 있다. -> 직렬구조로 명령어가 사용된 개수에 따라 달라질 수 있다.사칙연산, 비교, 치환 등 간단한 명령어를 가지고 있는데 이 연산을 모두 단위 시간에 수행할 수 있다고 가정한다. 실제 컴퓨터와 마찬가지로 정수의 고정된 길이(32bit, 4byte)로 표현한다무한한 양의 메모리를 가지며, 단위 시간에 메모리에 접근할 수 있다고 가정한다알고리즘 ..
알고리즘 개념 누적합누적합에 대해 잘 모른다면 이전에 정리해 둔 개념 정리를 한번 읽어보고 오는 것을 추천합니다.[알고리즘] 누적합 (prefix sum) [알고리즘] 누적합 (prefix sum)누적합 개념 정리누적합: 배열에서 앞에서부터 해당 인덱스까지의 원소의 값을 모두 더한 것구간합: i부터 j까지 해당 구간 사이 원소의 합예를 들어 5 4 3 2 1 이라는 값을 가진 5 크기의 배열 arrmint10.tistory.com 백준 19951번 태상이의 훈련소 생활https://www.acmicpc.net/problem/19951 19951번: 태상이의 훈련소 생활2020년 5월 14일 논산훈련소에 입대한 태상이는 첫 총기 훈련에서 가스 조절기를 잃어버리는 중대한 실수를 범했다. 그로 인해, 태상이는..
알고리즘 개념 누적합누적합에 대해 잘 모른다면 이전에 정리해 둔 개념 정리를 한번 읽어보고 오는 것을 추천합니다.[알고리즘] 누적합 (prefix sum) [알고리즘] 누적합 (prefix sum)누적합 개념 정리누적합: 배열에서 앞에서부터 해당 인덱스까지의 원소의 값을 모두 더한 것구간합: i부터 j까지 해당 구간 사이 원소의 합예를 들어 5 4 3 2 1 이라는 값을 가진 5 크기의 배열 arrmint10.tistory.com 백준 21318번 피아노 체조https://www.acmicpc.net/problem/21318 21318번: 피아노 체조피아노를 사랑하는 시은이는 매일 아침 피아노 체조를 한다. 시은이는 N개의 악보를 가지고 있으며, 1번부터 N번까지의 번호로 부른다. 각 악보는 1 이상 1..
알고리즘 개념 누적합누적합에 대해 잘 모른다면 이전에 정리해 둔 개념 정리를 한번 읽어보고 오는 것을 추천합니다.[알고리즘] 누적합 (prefix sum) [알고리즘] 누적합 (prefix sum)누적합 개념 정리누적합: 배열에서 앞에서부터 해당 인덱스까지의 원소의 값을 모두 더한 것구간합: i부터 j까지 해당 구간 사이 원소의 합예를 들어 5 4 3 2 1 이라는 값을 가진 5 크기의 배열 arrmint10.tistory.com 백준 17390번 이건 꼭 풀어야해!https://www.acmicpc.net/problem/17390 17390번: 이건 꼭 풀어야 해![2, 5, 1, 4, 3]을 비내림차순으로 정렬하면 [1, 2, 3, 4, 5]이다.www.acmicpc.net문제숭실골 높은 언덕 깊은 ..
알고리즘 개념: 누적합누적합에 대해 잘 모른다면 이전에 정리해 둔 개념 정리를 한번 읽어보고 오는 것을 추천합니다. 알고리즘 공부 3주차: 누적합 개념 알공 3주차: 누적합 개념본 게시글은 아마추어가 직접 공부하고, 정리하여 작성한 글이므로 내용이 깔끔하지 못하며 사실과 다른 부분이나 개인적인 견해가 포함되어 있을 수 있습니다. 모든 본문 내용은 반드시 참고mint10.tistory.com백준 11659번 구간 합 구하기 4https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄..