프로그래머스

    [Programmers] 탐욕법(Greedy) - 구명보트

    해당 문제는 프로그래머스의 탐욕법에 해당하는 문제를 풀고 작성한 것임을 밝힙니다. 프로그래머스 - 구명보트: https://programmers.co.kr/learn/courses/30/lessons/42885 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다. 구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다. 사..

    [Programmers] 그래프(Graph) - 가장 먼 노드

    [Programmers] 그래프(Graph) - 가장 먼 노드

    해당 글은 프로그래머스의 그래프 탐색 기법에 해당하는 문제를 풀고 작성했음을 밝힙니다. 해당 문제를 풀면서 참고한 블로그 출처를 아래에 밝힙니다. 프로그래머스 문제 링크 - https://programmers.co.kr/learn/courses/30/lessons/49189 문제 풀이 참고 - https://velog.io/@younge/Python-프로그래머스-가장-먼-노드-그래프 문제 설명 n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 ..

    [Programmers] 해쉬 - 베스트앨범

    해당 글은 프로그래머스 해쉬 Level3. 베스트 앨범을 풀고 작성한 글임을 밝힙니다. https://programmers.co.kr/learn/courses/30/lessons/42579 베스트앨범 문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래..

    [Programmers] SQL 고득점 Kit

    [Programmers] SQL 고득점 Kit

    해당 글은 프로그래머스 SQL 고득점 Kit를 바탕으로 작성됐음을 밝힙니다. 코딩테스트 연습 | 프로그래머스 (programmers.co.kr) - https://programmers.co.kr/learn/challenges SQL 고득점 Kit에는 SELECT, AGGREGATE(SUM, MAX, MIN), GROUP BY, IS NULL, JOIN, String, Date와 관련된 문제들로 구성되어 있습니다. LEVEL 2 문제만 골라풀다가 GROUP BY와 JOIN 문제들을 풀어나가는 중입니다. 드디어 1개 남았습니다. Keep Going! 다 풀었습니다~! SELECT # 문제명: 모듬 레코드 조회하기 # 모든 레코드 조회 SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_..

    [Programmers] 스택/큐 - 기능개발

    해당 글은 프로그래머스의 스택/큐 파트에 해당하는 문제를 풀고 공부하는 과정에서 작성한 글입니다. 틀린 부분이 있으면 댓글로 알려주세요! 감사합니다. 프로그래머스 기능개발 - http://https://programmers.co.kr/learn/courses/30/lessons/42586 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 ..

    [Programmers] 이분탐색 - 입국심사

    문제 설명 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다. 모든 사람이 심사를 받는데 걸리는 시간을 최소로 하고 싶습니다. 입국심사를 기다리는 사람 수 n, 각 심사관이 한 명을 심사하는데 걸리는 시간이 담긴 배열 times가 매개변수로 주어질 때, 모든 사람이 심사를 받는데 걸리는 시간의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한사항 입국심사..

    [Programmers] 완전 탐색 - 카펫

    [Programmers] 완전 탐색 - 카펫

    프로그래머스 카펫: https://programmers.co.kr/learn/courses/30/lessons/42842 코딩테스트 연습 - 카펫 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 programmers.co.kr 문제 설명 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다. Leo가 본 카펫에서 갈색 격자의 수 brown, 노..

    [Programmers] 완전 탐색 - 소수 찾기

    프로그래머스 소수 찾기: https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 programmers.co.kr 문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numb..