📌 문제 정보섬 연결하기 Level 3플랫폼프로그래머스유형그래프, MST, 크루스칼, 유니온-파인드언어Python 3풀이 시간약 70분풀이 날짜2026.06.09문제 링크바로가기 ↗🧩 문제 요약n개의 섬이 있고, 섬 사이를 잇는 다리를 놓는 비용 목록 costs가 주어질 때, 모든 섬이 연결되도록 다리를 놓는 최소 비용을 구하는 문제.입력 조건:n: 섬의 개수costs: [섬a, 섬b, 비용] 형태의 다리 목록출력 조건:모든 섬을 연결하는 최소 비용 반환💡 나의 접근 방식1단계 - 처음 든 아이디어"최소 비용으로 모든 섬을 연결"이라는 키워드에서 MST(최소 신장 트리) 문제임을 바로 파악했다. 모든 노드를 사이클 없이 최소 비용으로 연결하는 게 MST의 정의이기 때문이다.MST를 구현하는 방법은 ..
Python
📌 문제 정보입국심사 Level 3플랫폼프로그래머스유형이진탐색, 매개변수 탐색언어Python 3풀이 시간약 70분풀이 날짜2026.06.05문제 링크바로가기 ↗🧩 문제 요약n명의 사람이 입국심사를 기다리고 있고, 각 심사관마다 한 명을 심사하는 데 걸리는 시간이 다를 때, 모든 사람이 심사를 마치는 데 걸리는 최소 시간을 구하는 문제입력 조건:n: 심사를 기다리는 사람 수times: 각 심사관이 한 명을 심사하는 데 걸리는 시간 배열출력 조건:n명 모두가 심사를 받기까지 걸리는 최소 시간 반환💡 나의 접근 방식1단계 - 처음 든 아이디어"최소 시간을 구하라"는 말에 처음엔 그리디하게 접근했다. 매 순간 가장 빨리 비는 심사관에게 다음 사람을 배정하는 시뮬레이션을 떠올렸지만, n과 times의 원소 ..
📌 문제 정보길찾기 게임 Level 3플랫폼프로그래머스유형트리, 이진트리 구성, 순회언어Python 3풀이 시간약 90분풀이 날짜2026.06.01문제 링크바로가기 ↗🧩 문제 요약각 노드의 (x좌표, y좌표)가 주어질 때, 이를 이용해 이진트리를 구성하고 전위순회와 후위순회 결과를 구하는 문제트리 구성 규칙:y좌표가 큰 노드가 위쪽(부모), 작은 노드가 아래쪽(자식)같은 부모를 둔 두 자식 노드 중 x좌표가 작은 노드가 왼쪽 자식한 부모에 대해 자식이 둘 이상인 경우는 없음 (x좌표가 모두 다름)입력 조건:nodeinfo: 노드 번호 순서대로 [x좌표, y좌표]가 담긴 2차원 배열노드 번호는 1번부터 시작출력 조건:[전위순회 결과, 후위순회 결과] 형태의 2차원 배열 반환💡 나의 접근 방식1단계 -..
📌 문제 정보미로탈출 Level 3플랫폼프로그래머스유형BFS, 그래프 탐색언어Python 3풀이 시간약 80분풀이 날짜2026.05.25문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/159993">바로가기 ↗🧩 문제 요약격자 형태의 미로(maps)에서 출발지(S)부터 출구(E)까지 가는 최단 시간을 구하되, 반드시 레버(L)를 거쳐야 하는 문제입력 조건:maps는 문자열 배열, 각 문자열은 미로의 한 행S: 시작 지점, E: 출구, L: 반드시 거쳐야 할 레버, O: 통로, X: 벽상하좌우로만 이동 가능출력 조건:출발지에서 레버를 거쳐 출구까지 도달하는 최단 시간 반환도달 불가능하면 -1 반환💡 나의 접근 방식1단계 - 처음 든 아이..
📌 문제 정보다단계 칫솔 판매 Level 3플랫폼프로그래머스유형트리, 해시, 시뮬레이션언어Python 3풀이 시간약 70분풀이 날짜2026.05.04문제 링크바로가기 ↗🧩 문제 요약다단계 판매 조직(enroll, referral)에서 각 판매원(seller)이 칫솔을 판매(amount)했을 때, 추천인 체인을 따라 10%씩 이익을 분배하며 각 판매원이 최종적으로 가져가는 금액을 구하는 문제핵심 조건:판매원은 본인 판매금의 10%를 자신의 추천인에게 지급추천인도 그 금액의 10%를 자신의 추천인에게 지급 (재귀적으로 반복)분배할 금액이 1원 미만이면 그 윗단계로는 분배하지 않고, 자신이 갖음최상위 조직("-")은 더 이상 분배하지 않고 받기만 함입력 조건:가입한 사람 수: 2 ≤ enroll의 길이 ≤..
📌 문제 정보양과 늑대 Level 3플랫폼프로그래머스유형DFS, BFS, 트리언어Python 3풀이 시간약 90분풀이 날짜2026.05.06문제 링크바로가기 ↗🧩 문제 요약루트가 양인 이진 트리에서, 루트부터 출발해 인접한 노드로 이동하며 늑대에게 잡아먹히지 않는 선에서 모을 수 있는 최대 양의 수를 구하는 문제규칙 조건:루트 노드(0번)는 항상 양이며, 시작 지점이동은 현재까지 방문한 노드와 인접한 모든 노드 중에서 선택 가능 (트리 경로 순서를 그대로 따라가지 않아도 됨)어떤 시점이든 늑대 수 ≥ 양 수가 되는 순간 모든 양이 잡아먹힘 → 그 경로는 더 이상 진행 불가모든 노드를 다 방문할 필요는 없음입력 조건:info: 노드별 양(0)/늑대(1) 정보 배열, 1 ≤ info의 길이 ≤ 17edg..
📌 문제 정보베스트앨범 Level 3플랫폼프로그래머스유형해시, 정렬언어Python 3풀이 시간약 50분풀이 날짜2026.05.02문제 링크바로가기 ↗🧩 문제 요약genres(장르)와 plays(재생 횟수) 배열을 받아, 각 곡의 장르별 정보를 바탕으로 베스트 앨범에 들어갈 노래를 선정해 반환하는 문제명령 조건:가장 많이 재생된 총 재생 횟수가 많은 장르를 먼저 수록한 장르 안에서는 재생 횟수가 많은 노래를 먼저 수록장르 내에서는 최대 2곡까지만 수록입력 조건:genres[i], plays[i] 는 i번째 곡의 장르, 재생 횟수genres와 plays의 길이는 같음출력 조건:베스트 앨범에 들어갈 노래의 인덱스를 담은 배열 반환💡 나의 접근 방식1단계 - 처음 든 아이디어dict 하나에 장르별로 **총..
📌 문제 정보표 편집 Level 3플랫폼프로그래머스유형링크드 리스트, 시뮬레이션언어Python 3풀이 시간약 90분풀이 날짜2026.06.02문제 링크바로가기 ↗🧩 문제 요약n개의 행으로 이루어진 표에서 cmd 명령어를 순서대로 수행한 뒤, 삭제된 행을 표시한 문자열을 반환하는 문제명령 조건:U X : 현재 행에서 X칸 위로 이동D X : 현재 행에서 X칸 아래로 이동C : 현재 행 삭제, 삭제 후 바로 아래 행(없으면 바로 위 행)으로 이동Z : 가장 최근에 삭제한 행을 복구입력 조건:5 ≤ n ≤ 1,000,0001 ≤ cmd의 원소 개수 ≤ 200,000모든 X의 합 ≤ 1,000,000출력 조건:표의 0행부터 n-1행까지 삭제 여부를 O, X로 이어붙인 문자열 반환💡 나의 접근 방식1단계 -..