목록Web/알고리즘 (13)
희렌버핏
- 탐욕적으로 문제를 해결하는 방법(극단적으로?) - 당장 눈 앞에 보이는 최적의 상황만을 쫓는 알고리즘 - 가장 단순한 형태의 알고리즘 - 최적의 값은 아니지만 최적의 값에 근사값을 빠르게 구할 수 있다 - 특정한 상황에서 최적의 해를 보장 - 극단적으로 문제에 접근하기 때문에 정렬 기법이 함께 사용되는 경우가 많음 (무조건 큰, 작은, 긴, 짧은...) - 대표적 예시 : 크루스칼 알고리즘 (모든 간선 정렬하고 나서 짧은 간선 연결하는 최소 비용 신장 트리 알고리즘) 예시 - 거스름 돈을 줄 때 560원을 준다면 - 1원 555개보다 500원 1개 50원 한개 10원 1개가 낫다. => 무조건 더 큰 화폐 단위부터 거슬러 준다 (최적의 값을 보장) 참고 blog.naver.com/ndb796/2212..
문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때 각 배포마다 몇 개의 기능이 배포되는지를 return 하도록 solution 함수를 완성하세요. 제한 사항 작업의 개수(progresses, speeds배열의 길이)는 100개 이하입니다. 작업 진도는 100 미만의 자연수입니다. 작업 속도는 100 이하의 자..
문제 설명 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 종류 이름 얼굴 동그란 안경, 검정 선글라스 상의 파란색 티셔츠 하의 청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. 제한 사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. clot..
1. 내가 만든 로직 function solution(participant, completion) { participant.sort(); completion.sort(); for(var i=0;i
1. 내가 작성했던 코드 const heights = [3, 9, 9, 3, 5, 7, 2]; var answer = []; let before, after; for (let i = heights.length - 1; i > 0; i--) { before = heights[i]; for (let j = i - 1; j >= 0; j--) { after = heights[j]; if (after > before) { answer.unshift(j + 1); break; } else { if (j == 0) { answer.unshift(0); break; } } } } 2. 다른 사람의 코드 - map으로 간단히 해결할 수 있었다. - 굳이 뒤에서부터 비교할 필요가 없었다. function sol() { ..