알고리즘 고득점 키트
-
프로그래머스 문제 풀이기능 개발24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 29. 09:32
문제 URL 기능 개발 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이전과 마찬가지로, 입력을 통해서 문제를 차근히 풀어보도록 하겠습니다. 우선, 문제의 입력을 살펴보시죠. 입력: progresses = [93,30,55] speeds = [1,30,5] 이제 1일이 지났다고 합시다. 그럼 각 기능의 진행 상황을 진행 속도만큼 작업이 이루어집니다. 그러면 상태는 다음과 같습니다. 1일 차: progresses = [94,60,60] (progress[i] += speeds[i]) speeds = [1,30,5] 계속해서 반복합니다. 2일 차: progresses = [95,90,65] (progress[i] += speeds[i]) speeds = [1,30,5] 3일 ..
-
프로그래머스 문제 풀이 다리를 지나는 트럭24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 28. 15:27
문제 URL 다리를 지나는 트럭 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이전과 마찬가지로, 입력을 통해서 문제를 차근히 풀어보도록 하겠습니다. 우선, 첫 번째 입력을 살펴보시죠. bridge_length = 2 weight = 10 truck_weights = [7,4,5,6] 이 경우 다리의 길이는 2, 다리를 지날 수 있는 트럭들의 최대 무게는 10입니다. 먼저, 7을 진행한다고 해보죠. 0초 때 상황은 다음과 같습니다. 입력: bridge_length = 2 weight = 10 truck_weights = [7,4,5,6] 진행 상황: curr_time = 0 curr_weight = 0 bridge = [ ] 이제 1초 후인 1초 때 상황을 살펴볼까요? 입..
-
프로그래머스 문제 풀이 프린터24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 27. 13:11
문제 URL 프린터 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 먼저 문제에 따르면, priorities에는 문서의 중요도별로 존재합니다. 이 때 location에 위치한 문서가 출력 순서가 어떻게 되는지 반환하면 되는 문제입니다. 어느 때와 마찬가지로 입력을 예제로 직관적으로 문제를 풀어봅시다. 첫 번째 입력입니다. priorities : [2, 1, 3, 2] location : 2 priorities를 인덱스별로 나타내면 다음과 같습니다. priorities : [2, 1, 3, 2] index : [0, 1, 2, 3] location : 2 우리는 index가 location, 즉 2인 문서를 뽑아내면 됩니다. 문제에 따르면, prorities에서 출력될 문서들..
-
프로그래머스 문제 풀이 탑24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 26. 12:30
문제 URL 탑 Contents 문제 지문 파악하기 구르미의 알고리즘 풀이 문제 지문 파악하기 이번에도 입력을 통해서 문제를 파악해보도록 하겠습니다. 첫 번째 입력입니다. heights : [6, 9, 5, 7, 4] 여기서 각 송신탑들은 오른쪽에서 왼쪽으로 자신을 받아줄 송신탑들을 찾습니다. 자신 기준으로 왼쪽 탑들 중 첫 번째로 자신보다 큰 탑이 수신탑입니다. 어떻게 구할 수 있을까요? 먼저 직관적으로 한 번 풀어봅시다. heights의 인덱스를 1부터 시작해서 매기면 다음과 같을겁니다. heights : [6, 9, 5, 7, 4] indexes : [1, 2, 3, 4, 5] 5번째 탑(높이 = 4)에서 봤을 때 왼쪽 탑 중, 4번째 탑(높이 = 7)이 자신을 받아 줄 수 있습니다. heights..
-
프로그래머스 문제 풀이 여행 경로24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 25. 10:27
이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL 여행 경로 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 구르미의 알고리즘 풀이 문제 지문 파악하기 이 문제에서, 우리는 주어진 티켓들을 활용하여 모든 지점을 순회하여야 합니다. 이 때, 알파벳 순서가 앞서는 경로로 만들어주어야 하지요. 언제나 그렇듯이 예제를 통해 문제를 파악해보겠습니다. 2번째 입력을 살펴보죠. tickets : 1. "ICN" -> "SFO" 2. "ICN" -> "ATL" 3. "SFO" -> "ATL" 4. "ATL" -> "ICN" 5. "ATL" -> "SFO" 위와 같이 총 5개의 티켓이 있습니다. 문제에서 "ICN"부터 시작하고 ..
-
프로그래머스 문제 풀이 N으로 표현24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 24. 15:36
이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL N으로 표현 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 구르미의 알고리즘 풀이 문제 지문 파악하기 이 문제의 요점은 사칙연산을 통해서 number를 최소로 표현하는 N의 개수를 구하는 문제입니다. 먼저 예제를 들어서 문제를 파악해보도록 하겠습니다. 12 = 5 + 5 + (5/5) + (5/5) (6개) = 55/5 + 5/5 (5개) = (55 + 5)/5 (4개) 12는 다음과 같이 6개의 5, 5개의 5, 4개의 5를 구할 수 있습니다. 즉 12를 표현하는 5로 이루어진 수식을 만들기 위해서 필요한 5의 최소 개수는 4개라는 뜻입니다. 어떻게 풀 수 있..
-
프로그래머스 문제 풀이 큰 수 만들기24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 6. 15:05
이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL 큰 수 만들기 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 구르미의 알고리즘 풀이 문제 지문 파악하기 문제에 따르면, 입력 numbers에 대해서 해당 문자열이 가장 큰 수를 만들게끔 k개를 빼야 합니다. 예제 입력을 살펴보죠. numbers = "4177252841" k = 4 어떻게 가장 큰 수를 만들 수 있을까요? 먼저, 일단 숫자가 나오면 저장합니다. 그리고 그 보다 큰 숫자가 나오면 저장했던 수를 빼보면 어떨까요? 자 시작해봅시다. 처음 숫자인 4를 넣습니다. collected = ["4"] ( k = 4 ) 그 후 1을 넣습니다. 1은 4보다 작기 ..
-
프로그래머스 문제 풀이 가장 큰 수24년 11월 이전/레거시-프로그래머스-코딩 테스트 고득점 kit 2019. 11. 6. 14:58
이 문제는 이시윤 강사님의 프로그래머스 강좌 "파이썬을 무기로, 코딩테스트 광탈을 면하자!"를 보고 정리한 내용입니다. 문제 URL 가장 큰 수 Contents 문제 지문 파악하기 강사님의 알고리즘 풀이 구르미의 알고리즘 풀이 문제 지문 파악하기 이 문제는 주어진 입력 numbers를 가지고 가장 큰 수를 만드는 것입니다. 먼저 첫 번째 입력을 볼까요? numbers = [6, 10, 2] 여기서 우리가 원하는 기준 "큰 수를 만드는 순"으로 정렬을 해주어야 합니다. 이를테면 6, 10 을 비교합시다. 6 > 10 ( "6" + "10" = "610" > "10" + "6" = "106") 우리 정렬 기준에서는 6이 10보다 우선순위가 높습니다. 왜냐하면, 두 숫자를 가지고 만든 숫자 610, 106 중..