본문 바로가기
  • 개발하는 곰돌이

Comparator2

[Kotlin] 백준 21939 : 문제 추천 시스템 Version 1 문제 링크 21939번: 문제 추천 시스템 Version 1 tony9402는 최근 깃헙에 코딩테스트 대비 문제를 직접 뽑아서 "문제 번호, 난이도"로 정리해놨다. 깃헙을 이용하여 공부하시는 분들을 위해 새로운 기능을 추가해보려고 한다. 만들려고 하는 명령 www.acmicpc.net 문제 해설 정렬과 탐색을 동시에 빠르게 하기 위해서 TreeSet을 사용하여 풀었다. 문제의 번호를 인덱스로 하여 문제의 난이도를 배열로 따로 관리했고, 문제 번호는 TreeSet에서 난이도가 높은 순으로, 난이도가 같다면 문제 번호가 큰 순서대로 정렬되도록 Comporator를 구현했다. 그 후 주어지는 문제의 정보를 저장한 후 명령어별로 분기를 수행하면 된다. recommend : \(x\)가 \(1\)이면 TreeSe.. 2023. 2. 14.
[Kotlin] 백준 21773 : 가희와 프로세스 1 문제 링크 21773번: 가희와 프로세스 1 1초일 때 부터 4초일 때 상황을 그림으로 나타내면 아래와 같습니다. 아래 그림에서 주황색은 특정 시점에 스케쥴러가 선택한 프로세스를 의미합니다. www.acmicpc.net 문제 해설 우선순위 큐와 Comparable 인터페이스를 구현한 클래스를 사용하여 답을 찾아야 한다. 문제를 해결하는 과정은 다음과 같다. 각 프로세스의 우선순위가 같다면 id가 낮은 순으로, 다르다면 우선순위를 높은 순으로 정렬하도록 Comparable 인터페이스를 구현한 클래스를 선언한다. 우선순위 큐에 입력을 토대로 생성한 프로세스 객체를 모두 삽입한다. 우선순위 큐의 Root 요소를 꺼내어 다음 연산을 수행한다. null이라면(= 스케줄러가 비어있다면) 반복문을 종료한다. 꺼낸 프.. 2023. 1. 10.