우선순위 큐
-
프로그래머스 문제 풀이 이중 우선순위 큐24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 12. 5. 16:57
문제 URL 이중 우선순위 큐 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이번에도, 입력을 통해서 문제를 파악해보도록 하겠습니다. 문제의 입력은 이렇습니다. 입력: operations = ["I 16","D 1"] 이제 차례 차례 operations를 보고 이중 우선순위 큐에 데이터를 넣어봅시다. 먼저 첫번 째입니다. 해당 문자열을 " " 기준으로 자릅니다. elem = "I 16" op = "I" num = 16 이제 우선순위 큐에 16을 저장합니다. pq = [ 16 ] 이제 다음 데이터를 봅시다. 데이터는 이렇게 될 겁니다. elem = "D 1" op = "D" num = 1 pq = [ 16 ] 이제 D에 1이 나왔으니 우선순위 큐 최댓값을 제거합니다. pq ..
-
프로그래머스 문제 풀이 디스크 컨트롤러24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 12. 4. 23:37
문제 URL 디스크 컨트롤러 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이번에도, 입력을 통해서 문제를 파악해보도록 하겠습니다. 문제의 입력은 이렇습니다. 입력: jobs = [[0, 3], [1, 9], [2, 6]] 이 때, 먼저 최초 작업은 request=0, expend=3인 작업을 진행합니다. 그러면 결국 이렇게 됩니다. jobs = [[1, 9], [2, 6]] n = 1 //처리한 작업의 개수 time = 3 //현재 시간 (0 + expend=3) answer = 3 // 작업 요청부터 작업이 마무리까지 걸린 시간 (0 + expend) 이제 어떤 작업을 골라야 할까요? 이럴 경우, 요청 시간이 짧은 걸 먼저 처리할수록, answer에 크기가 작아집니다...
-
프로그래머스 문제 풀이 라면 공장24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 12. 2. 11:22
문제 URL 라면 공장 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이번에도, 입력을 통해서 문제를 파악해보도록 하겠습니다. 문제의 입력은 이렇습니다. 입력: stock = 4 dates = [4, 10, 15] supplies = [20, 5, 10] k = 30 문제에 따르면, 4일 째에 물량이 처음으로 동이 납니다. 4일 째 stock = 0 (4-4 (dates[0])) 그런데, dates 에는 4가 있습니다. 따라서 4일째, 물량인 20을 받습니다. 4일 째 stock = 20 (0 + 20 (supplies[0])) 이후, 우리는 10일 째, 15일 째 물량을 공급 받을 수 있습니다. 문제에 따르면, "최대한 적게 공급을 받는다"라고 적혀 있으니, 최대한 날짜..
-
프로그래머스 문제 풀이 더 맵게24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 16. 16:01
이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL 더 맵게 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 구르미의 알고리즘 풀이 문제 지문 파악하기 문제의 입력을 통해서, 문제를 어떻게 풀어야할지 생각해봅시다. 문제 입력 : scoville = [1, 2, 3, 9, 10, 12] K=7 scoville에서 K보다 작은 수는 1, 2, 3이 존재합니다. 따라서 scoville을 섞어주어야 합니다. scoville에서 가장 작은 원소 1과, 두번째로 작은 원소 2를 꺼냅니다. 그 후 다음 수식을 적용시켜서 값을 저장합니다. 수식 : 가장 작은 원소 + (두 번째로 작은 원소 * 2) 즉, 수식을 적용하면 "1 +..