목록프로그래머스 (24)
Study hard

https://programmers.co.kr/learn/courses/30/lessons/83201# 코딩테스트 연습 - 2주차_상호평가 [[100,90,98,88,65],[50,45,99,85,77],[47,88,95,80,67],[61,57,100,80,65],[24,90,94,75,65]] "FBABD" [[70,49,90],[68,50,38],[73,31,100]] "CFD" programmers.co.kr [풀이] i번 학생이 자신에게 준 점수가 자신이 받은 점수 중 유일한 최저점이거나 유일한 최고점이면 평균을 구하는 식에서 제외한다. #include #include #include //sort using namespace std; string solution(vector scores) { s..

programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr [풀이] vectorstudent에 각 학생이 가지고 있는 체육복 개수를 저장하고, 체육복이 없는 학생이고 앞 또는 뒤 학생이 2개의 체육복을 가지고 있을 경우 각각 +1, -1을 해주었다. 마지막에 1개 이상의 체육복을 가진 학생 수를 세 출력하였다. #include #include using namespace std; int solution(int n, vector lost..

programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr [풀이] 구현한 것 1. 먼저 고유번호를 vectorMusic에 저장하여 장르가 같은 것끼리 붙도록 정렬 2. 각 장르에 속한 노래들을 재생한 횟수 vectornum_of_G에 저장 3. 각 장르에 속한 노래 고유번호 mapTotal에 저장(index는 장르) 4. 재생 횟수가 많은 순으로 num_of_G정렬 5. 재생 횟수 많은 장르 순서대로 각각 속한 노래들을 재생 횟수..

programmers.co.kr/learn/courses/30/lessons/42628 코딩테스트 연습 - 이중우선순위큐 programmers.co.kr [풀이] 큐의 양쪽에서 삽입, 삭제 연산을 해야하므로 deque를 사용하여 구현하였다. 삽입을 할 때마다 큐를 정렬하는 과정이 필요하다. #include #include #include #include //sort using namespace std; vector solution(vector operations) { vector answer; dequeq; for (int i = 0; i < operations.size(); i++) { char OP = operations[i].at(0); int num = stoi(operations[i].subst..

programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr [풀이] queue라이브러리의 우선순위 큐로 힙을 구현하였다. Min Heap : 부모노드가 자식노드보다 작음 priority_queueq Max Heap : 부모노드가 자식노드보다 큼 priority_queueq priority_queueq 이 문제에서는 가장 맵지 않은 음식 두개를 가지고 섞어야 하므로 top에 제일 작은 수가 오는 Min Heap을 사용해야한..

programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr [풀이] deque를 써서 풀었다. 요청한 문서의 위치가 0일 때 다른 문서들의 중요도보다 크면 break하는 방법으로 구현하였다. #include #include #include using namespace std; int solution(vector priorities, int location) { int answer = 0; dequep; for (int i = 0; i <..