[프로그래머스] Lv.2 더 맵게 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/42626# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 이를 위해 아래와 같은 규칙으로 두 음식을 섞습니다:새로운 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 × 2)모든 음식의 스코빌 지수가 K 이상이 될 때까지 섞어야 하며, 최소 몇 번 섞어야 하는지를 구해야 합니다.풀이 방법우선순위 큐를 사용하면 쉽게 풀 수 있습니다.우선순위 큐의 값은 내림차순으로 정렬되기에 입력받..
[프로그래머스] Lv.1 문자열 내 마음대로 정렬하기 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다.예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬해주세요. 풀이 방법sort() 함수에 사용자 정의 정렬 기준을 적용하면 문제를 쉽게 해결할 수 있습니다.n번째 위치의 알파벳을 기준으로 문자열을 오름차순 ..
[프로그래머스] Lv.3 단어 변환 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/43163# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 주어진 단어 begin에서 target으로 변환하는 가장 짧은 과정을 찾는 문제입니다. 변환 과정에서는 다음 규칙을 따라야 합니다:한 번에 한 개의 알파벳만 변경할 수 있습니다.변경된 단어는 반드시 주어진 단어 목록(words)에 포함되어 있어야 합니다.문제 조건모든 단어는 소문자 알파벳으로 이루어져 있으며, 길이는 동일합니다.변환 과정에서 target 단어로 변환할 수 없으면 0을 반환합니다. 풀이 방법이 문제는 BFS로 풀 수 있습니다.B..
[프로그래머스] Lv.2 모음사전 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 모음 알파벳 'A', 'E', 'I', 'O', 'U'만으로 구성된 길이 5 이하의 모든 단어가 수록된 사전을 기준으로, 주어진 단어가 사전에서 몇 번째 순서인지 반환해야 합니다.사전의 첫 번째 단어는 "A", 두 번째는 "AA", 마지막은 "UUUUU"입니다.입력으로 주어진 단어의 길이는 1 이상 5 이하이며, 알파벳 대문자 'A', 'E', 'I', 'O', 'U'로만 이루어져 있습니다.주어진 단어가 사전에서 몇 번째인지 반환하는 solut..
[프로그래머스] Lv.1 가장 많이 받은 선물 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/258712 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 2024 KAKAO WINTER INTERNSHIP에 나온 문제입니다.카카오톡의 선물하기 기능을 활용해 친구들에게 선물을 주고받은 기록을 바탕으로, 다음 달에 누가 가장 많은 선물을 받을지 예측하는 시스템을 개발하려 합니다.두 사람이 주고받은 선물 횟수를 비교하여, 더 많이 선물을 준 사람이 다음 달에 선물을 하나 받습니다.예: A가 B에게 선물을 5번 주고, B가 A에게 3번 줬다면, A가 다음 달에 선물을 받습니다.두 사람이 주고받은 기록..
[프로그래머스] Lv.2 기능개발 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 각 기능의 개발 진도가 100%에 도달했을 때 배포가 이루어집니다.배포는 하루에 한 번, 앞선 작업이 완료되면 뒤의 작업이 함께 배포됩니다. 주어진 조건작업의 진도(progresses)와 개발 속도(speeds)가 주어집니다.하루 단위로 작업이 진행되며, 각 배포마다 몇 개의 작업이 배포되는지를 반환해야 합니다.예시progresses = [93, 30, 55]speeds = [1, 30, 5]결과: [2, 1]첫 번째 배포에서 2개의 기능, 두..
[프로그래머스] Lv.3 베스트앨범 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 스트리밍 사이트에서 장르별로 가장 많이 재생된 노래를 모아 베스트 앨범을 출시하려고 합니다. 각 노래는 고유 번호로 구분되며, 베스트 앨범에 수록할 노래를 선택하는 기준은 다음과 같습니다:장르별 총 재생 횟수가 많은 장르부터 수록합니다.각 장르 내에서 재생 횟수가 많은 노래를 먼저 수록합니다.재생 횟수가 같은 경우, 고유 번호가 낮은 노래를 먼저 수록합니다.이 문제는 genres와 plays라는 두 개의 배열을 기반으로, 주어진 조건에 맞게 베..
[프로그래머스] Lv.1 문자열 나누기 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문자열 s를 다음 규칙에 따라 여러 문자열로 분리하려고 합니다:첫 글자를 기준으로 x로 정하고, 이를 포함한 횟수와 x가 아닌 글자의 횟수를 셉니다.두 횟수가 같아지면 해당 부분 문자열을 분리합니다.나머지 문자열에 대해 이 과정을 반복하며, 문자열이 없으면 종료합니다.만약 두 횟수가 다르고 더 이상 읽을 글자가 없으면, 남은 부분을 하나로 분리합니다.문자열 s가 주어졌을 때, 위 과정을 통해 분리된 문자열의 개수를 반환하는 함수를 구현해야 합..