Algotithms
-
문제 여벌 체육복이 있는 학생이 앞 번호나 뒷 번호 학생에게 체육복을 빌려줄 수 있다. 전체 학생 수 n, 체육복을 도난당한 학생들의 번호 배열 lost, 여벌 체육복을 가져온 학생의 번호 reserve가 있을 때 체육수업을 들을 수 있는 학생의 최댓값 구하기 2 뒷 번호 순으로 체육복 빌릴 수 있는지 확인 for num in sorted(list(lost)) : if num-1 in reserve : reserve.remove(num-1) elif num+1 in reserve : reserve.remove(num+1) else: n -= 1 return n References 프로그래머스 고득점Kit 그리디
[프로그래머스] 체육복문제 여벌 체육복이 있는 학생이 앞 번호나 뒷 번호 학생에게 체육복을 빌려줄 수 있다. 전체 학생 수 n, 체육복을 도난당한 학생들의 번호 배열 lost, 여벌 체육복을 가져온 학생의 번호 reserve가 있을 때 체육수업을 들을 수 있는 학생의 최댓값 구하기 2 뒷 번호 순으로 체육복 빌릴 수 있는지 확인 for num in sorted(list(lost)) : if num-1 in reserve : reserve.remove(num-1) elif num+1 in reserve : reserve.remove(num+1) else: n -= 1 return n References 프로그래머스 고득점Kit 그리디
2023.06.04 -
문제 퍼즐 조각을 1x1 칸으로 나뉜 정사각형 게임 보드의 빈 공간에 적절히 올려놓으려 한다. 3
[프로그래머스] 퍼즐 조각 채우기문제 퍼즐 조각을 1x1 칸으로 나뉜 정사각형 게임 보드의 빈 공간에 적절히 올려놓으려 한다. 3
2023.06.04 -
문제 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫이 있다. 갈색 격자의 수와 노란색 격자의 수가 주어질 때, 카펫의 가로와 세로 크기 구하기 8
[프로그래머스] 카펫문제 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫이 있다. 갈색 격자의 수와 노란색 격자의 수가 주어질 때, 카펫의 가로와 세로 크기 구하기 8
2023.05.29 -
문제 일정 피로도를 사용해 던전을 탐험할 수 있다. 각 던전마다 탐험을 시작하기 위해 필요한 '최소 필요 피로도'와 던전 탐험을 마쳤을 대 소모되는 '소모 피로도'가 있다. 하루에 한 번씩 탐험할 수 있는 던전이 여러 개 있는데, 한 유저가 탐험할 수 있는 던전의 최대 개수 구하기 1
[코딩테스트] 피로도문제 일정 피로도를 사용해 던전을 탐험할 수 있다. 각 던전마다 탐험을 시작하기 위해 필요한 '최소 필요 피로도'와 던전 탐험을 마쳤을 대 소모되는 '소모 피로도'가 있다. 하루에 한 번씩 탐험할 수 있는 던전이 여러 개 있는데, 한 유저가 탐험할 수 있는 던전의 최대 개수 구하기 1
2023.05.29 -
문제 N개의 송전탑이 전선을 통해 하나의 트리형태로 연결되어 있다. 이 전선 중 하나를 끊어 전력망 네트워크를 2개로 분할하려고 한다. 이때 두 전력망이 갖게 되는 송전탑의 개수를 최대한 비슷하게 맞춰야 한다. 2
[코딩테스트] 전력망을 둘로 나누기문제 N개의 송전탑이 전선을 통해 하나의 트리형태로 연결되어 있다. 이 전선 중 하나를 끊어 전력망 네트워크를 2개로 분할하려고 한다. 이때 두 전력망이 갖게 되는 송전탑의 개수를 최대한 비슷하게 맞춰야 한다. 2
2023.05.29 -
문제 사전에 알파벳 모음으로 만들 수 있는 길이 5 이하의 단어가 수록되어 있다. 첫 단어는 A 이고, 그 다음은 AA 이고, 마지막 단어는 UUUUU 이다. 단어 word 가 주어질 때 이 단어가 사전에서 몇 번째 단어인지 리턴하기 풀이 1 전체 단어 리스트 중 현재 단어의 위치 찾기 product 사용해 전체 단어 리스트를 만든다. bisect_right 이용해 현재 단어가 몇 번째 단어인지 찾는다. 시간 복잡도 : 단어의 길이가 최대 5 이므로, 전체 단어의 개수는 3905개가 된다. from itertools import product from bisect import bisect_right def solution(word): vowels = ['A', 'E', 'I', 'O', 'U'] # 모음..
[프로그래머스] 모음 사전문제 사전에 알파벳 모음으로 만들 수 있는 길이 5 이하의 단어가 수록되어 있다. 첫 단어는 A 이고, 그 다음은 AA 이고, 마지막 단어는 UUUUU 이다. 단어 word 가 주어질 때 이 단어가 사전에서 몇 번째 단어인지 리턴하기 풀이 1 전체 단어 리스트 중 현재 단어의 위치 찾기 product 사용해 전체 단어 리스트를 만든다. bisect_right 이용해 현재 단어가 몇 번째 단어인지 찾는다. 시간 복잡도 : 단어의 길이가 최대 5 이므로, 전체 단어의 개수는 3905개가 된다. from itertools import product from bisect import bisect_right def solution(word): vowels = ['A', 'E', 'I', 'O', 'U'] # 모음..
2023.05.29