[프로그래머스] 디스크 컨트롤러
해당 문제의 원문은 여기서 확인하자. 문제 이해 [작업이 요청되는 시점, 작업의 소요시간]의 형태를 가진 작업들이 들어올 때, 걸린 시간의 평균이 최소인 경우를 구하는 문제이다. 예를 들면, A[0, 3], B[1, 9], C[2, 6]의 작업들이 있을 때, A - C - B의 순서로 작업을 처리하는 것이 평균 시간이 가장 최소이다. 2차원 배열 형태로 작업(jobs)이 주어지며 제한 사항은 다음과 같다. 1 ≤ jobs ≤ 500 0 ≤ 작업이 요청되는 시점 ≤ 1,000 1 ≤ 소요시간 ≤ 1,000 진행중인 작업이 없는 경우 먼저 요청이 들어온 작업부터 처리한다. 접근 방식 우선 순위 큐의 개념을 이용해 문제를 해결하였다. 해결 방식은 먼저 요청 시점을 기준으로 입력을 정렬한다. 이후 시간을 기준으..
2022. 8. 16.
[백준] 2473번 세 용액
해당 문제의 원문은 여기서 확인하자. 문제 이해 많은 종류의 산성 용액과 알칼리성 용액이 있을 때, 이 중에서 같은 양으로 혼합하여 특성값이 0에 가장 가까운 세 용액을 찾는 문제이다. 예를 들면, 주어진 용액이 [-2, 6, -97, -6, 98]인 경우 특성값이 -97와 -2, 98인 용액을 혼합하면 특성값 -1인 용액을 만들 수 있고, 이 용액이 특성값이 0에 가장 가까운 용액이다. 첫째 줄에 전체 용액의 수 N이 주어지고, 둘째 줄에 용액의 특성값을 나타내는 N개의 정수가 빈칸으로 구분되어 주어진다. 제한 사항은 다음과 같다. 3 ≤ N ≤ 5,000 -1,000,000,000 ≤ 특성값 ≤ 1,000,000,000 특성값은 모두 다르다. 산성 용액만으로나 알칼리성 용액만으로 입력이 주어지는 경우..
2022. 8. 15.