2025/10/07 3

리마인딩

지극히 개인적이고 주관적인 회고록임을 밝힙니다.서문최근 아버지의 항암치료가 일단락되고, 어느정도 내 일을 수행할 여유를 가질 수 있게 되었다.그런데 이렇게 갑자기 시간이 생기니 무엇을 해야 할지 모르는 문제를 겪고 있었다."내가 왜 살지?"라는 현학적인 질문만 던져가고 있었다.이는 아무것도 해결해주지 않는 쓸데없는 생각이다.이는 그 간의 피로가 누적되었다고 볼 수 있는데, 그렇다고 마냥 쉬는 것은 딱히 즐겁지도 않고 내 방식도 아니었다.그래서 "무엇을 삶의 목표로 삼을 것인가?" 라는 질문을 스스로에게 던져보았다.이러한 생각이 드는 이유뭘 해야 할지 모른다.원래 하고 싶은것은 많았다.최근 항암치료 보조때문에 어느정도 "내 욕심"에 대한 집중을 줄이게 되었다.관성처럼 움직이고 있다.곧 유지가 불가능해질 징..

개인적 공간 2025.10.07

[USACO Gold] DAG - 위상 정렬

위상 정렬이란, Directed Acyclic Graph(DAG)의 정점들을 각 정점이 자신의 자식 정점들보다 먼저 방문되도록 나열하는 것을 의미한다.방향 그래프(directed graph)는 간선을 한쪽 방향으로만 이동할 수 있는 그래프를 의미한다.또한 비순환 그래프(acyclic graph)는 순환(cycle)을 포함하지 않는 그래프를 의미한다.이는 하나 이상의 간선을 따라가서 출발한 정점으로 다시 돌아올 수 없는 구조를 말한다.이 두 정의를 합치면, 방향 비순환 그래프(directed acyclic graph, 줄여서 DAG)는 간선을 한쪽 방향으로만 이동할 수 있고 순환을 포함하지 않는 그래프이다.위상 정렬 (Topological Sort) - Course Schedule다음 문제를 풀어보자. C..

PS/USACO Gold 2025.10.07

[USACO Gold] Disjoint Set, 분리 집합, Union-find

그래프에 간선을 추가하고 그래프의 두 정점이 연결되어 있는지 검사할 수 있게 해 주는 자료구조가 분리 집합(DSU, Union-Find) 이다.USACO.guide는 알고리즘의 원리와 정의보단 어떻게 이 정의를 떠올릴 수 있는지에 집중한다.알고리즘의 원리와 정의가 중요하지 않다는 뜻이 아니다.실제 Union-find의 원리와 관련된 내용은 다음 링크를 참고 바란다. CS Academy csacademy.com 구현(Implementation)import java.util.*;public class DisjointSets { int[] parents; int[] sizes; public DisjointSets(int size) { parents = new int[size]; ..

PS/USACO Gold 2025.10.07