boj

🔒 문제 💭 생각의 흐름 라이브러리에서 CircularQueue 를 제공하거나 이미 구현해놓은 코드가 있다면 CircularQueue 안에서 iterator를 쓰면 좋겠다고 생각은 했지만 java, kotlin 에서 CircularQueue를 제공하지 않으므로 그냥 사이즈의 최대 크기를 넘어가는 시점에는 mod(%) 연산으로 index를 조정하는 방식을 택했다. 출력 결과에 '
🔒 문제 🧠 생각의 흐름 입력값에 "위치가 같은 두 점은 없다" 라는 부분에서 중복 값 저장은 신경쓸 필요가 없다는 것을 알 수 있다. 총 2가지로 풀이할 수 있다. (1) 일단 모든 숫자를 리스트나 배열에 담고 정렬하자 y 기준 정렬 -> x 기준 정렬 (stable) (2) SortedSet을 사용하자 ✔️ => 애초에 담길 때 부터 우선순위에 의해 자동 정렬이 되는 자료구조로 정렬의 우선순위인 'comparator' 만 정의해주면 된다. 🔑 풀이 import java.io.BufferedReader import java.io.BufferedWriter import java.io.InputStreamReader import java.io.OutputStreamWriter import java.util..
문제 아이디어 정점, 간선 단어를 보자마자 '그래프'? 연결 요소 == 이어진 그래프를 의미한다. BFS or DFS를 떠올린다. 나는 BFS를 선택했다. 모든 노드(정점) 목록을 원소로 갖는 집합(Set)을 두고 한 번의 BFS마다 생기는 그래프를 전체 집합에서 제외시키는 방식으로 풀이했다. (전체 집합이 공집합이 될 때까지 Loop) 실수 undirected graph (무방향 그래프) 인것을 확인하지 않고 단방향 연결 리스트로만 체크하다가 틀려버렸다. 구현 [Graph.kt] import java.util.* import kotlin.collections.ArrayList class Graph(private val vertexNumber: Int) { val vertexSet : Set = (1 ...
M_Falcon
'boj' 태그의 글 목록