From 90de42b41cfe28d545b60a967213949ab1a15eac Mon Sep 17 00:00:00 2001 From: yoouyeon Date: Tue, 7 Oct 2025 21:28:10 +0900 Subject: [PATCH 1/4] =?UTF-8?q?=F0=9F=92=A1=20=ED=94=84=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EB=9E=98=EB=A8=B8=EC=8A=A4=2072411=20-=20=EB=A9=94=EB=89=B4=20?= =?UTF-8?q?=EB=A6=AC=EB=89=B4=EC=96=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4_\353\246\254\353\211\264\354\226\274.js" | 59 ++++++++++++++++++- 1 file changed, 58 insertions(+), 1 deletion(-) diff --git "a/Programmers/Level2/72411_\353\251\224\353\211\264_\353\246\254\353\211\264\354\226\274.js" "b/Programmers/Level2/72411_\353\251\224\353\211\264_\353\246\254\353\211\264\354\226\274.js" index cb113e2..cdd4d8e 100644 --- "a/Programmers/Level2/72411_\353\251\224\353\211\264_\353\246\254\353\211\264\354\226\274.js" +++ "b/Programmers/Level2/72411_\353\251\224\353\211\264_\353\246\254\353\211\264\354\226\274.js" @@ -1,3 +1,60 @@ +/* +⭐️ 문제 정보 ⭐️ +문제 : 72411 - 메뉴 리뉴얼 +레벨 : Level 2 +링크 : https://school.programmers.co.kr/learn/courses/30/lessons/72411 +*/ + +// ANCHOR 2025.10.07 풀이 +function combination(arr, n) { + // arr 배열에서 n개 뽑는 조합들을 담은 배열 반환 + if (n === 1) return arr.map((el) => [el]); + + const result = []; + arr.forEach((fixed, idx) => { + // fixed 이후의 원소들을 뽑는 조합을 찾아내야 함. + const rest = arr.slice(idx + 1); + const comb = combination(rest, n - 1); + const combine = comb.map((c) => [fixed, ...c]); + result.push(...combine); + }); + + return result; +} + +function solution(orders, course) { + let answer = []; + + // 조합 만들기 + for (const cnt of course) { + // cnt개 코스 결정하기 + const courseMap = new Map(); // key: 코스 조합 value: 주문 횟수 + for (const order of orders) { + const sortedOrder = order.split("").sort(); + combination(sortedOrder, cnt).forEach((comb) => { + // 코스가 존재하는 경우 주문 횟수를 증가시켜줌 + const courseName = comb.join(""); + courseMap.set(courseName, (courseMap.get(courseName) || 0) + 1); + }); + } + // 많이 주문된 것 answer에 담기 + if (courseMap.size > 0) { + const maxCount = Math.max(...courseMap.values()); + // 최소 2번 이상 주문되었고, 최댓값인 메뉴만 추가 + if (maxCount >= 2) { + courseMap.forEach((count, courseName) => { + if (count === maxCount) { + answer.push(courseName); + } + }); + } + } + } + + return answer.sort(); +} + +// ANCHOR 2024.03.02 풀이 // map: 조합 저장 맵 // arr: 조합을 만드려는 배열 // comb: 조합을 만들고 있는 배열 @@ -22,7 +79,7 @@ function combination(map, arr, comb, idx, goal) { } } -function solution(orders, course) { +function solution1(orders, course) { const menuMap = new Map(course.map((count) => [count, new Map()])); // key: 코스 길이, (key: 메뉴 조합, value: 주문 횟수) // 각 손님별로 반복 orders.forEach((order, idx) => { From a70e11ddb66e97366df91cf2b6d393c4a8c54299 Mon Sep 17 00:00:00 2001 From: yoouyeon Date: Tue, 7 Oct 2025 21:40:23 +0900 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=92=A1=20=ED=94=84=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EB=9E=98=EB=A8=B8=EC=8A=A4=2042578=20-=20=EC=9D=98=EC=83=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Level2/42578_\354\235\230\354\203\201.js" | 23 +++++++++++++++++++ Programmers/README.md | 3 ++- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 "Programmers/Level2/42578_\354\235\230\354\203\201.js" diff --git "a/Programmers/Level2/42578_\354\235\230\354\203\201.js" "b/Programmers/Level2/42578_\354\235\230\354\203\201.js" new file mode 100644 index 0000000..ea60a69 --- /dev/null +++ "b/Programmers/Level2/42578_\354\235\230\354\203\201.js" @@ -0,0 +1,23 @@ +/* +⭐️ 문제 정보 ⭐️ +문제 : 42578 - 의상 +레벨 : Level 2 +링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42578 +*/ + +function solution(clothes) { + const closet = new Map(); // key: 의상의 종류, value: 의상 이름이 담긴 배열; + for (const cloth of clothes) { + const [name, type] = cloth; + if (closet.has(type)) { + closet.get(type).push(name); + } else { + closet.set(type, [name]); + } + } + + // 해당 타입을 안입는 경우까지 포함한 조합의 경우의 수 구함 - 아무것도 입지 않는 경우의 수 빼기 + const answer = + [...closet.values()].reduce((acc, cur) => acc * (cur.length + 1), 1) - 1; + return answer; +} diff --git a/Programmers/README.md b/Programmers/README.md index 6471d5c..cc90421 100644 --- a/Programmers/README.md +++ b/Programmers/README.md @@ -22,6 +22,7 @@ | 17686 | [3차] 파일명 정렬 | [17686_[3차]_파일명_정렬.js](Level2/17686_[3차]_파일명_정렬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17686) | | 17687 | n진수 게임 | [17687_n진수_게임.js](Level2/17687_n진수_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17687) | | 42576 | 완주하지 못한 선수 | [42576_완주하지_못한_선수.js](Level1/42576_완주하지_못한_선수.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42576) | +| 42578 | 의상 | [42578_의상.js](Level2/42578_의상.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42578) | | 42579 | 베스트앨범 | [42579_베스트앨범.js](Level3/42579_베스트앨범.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42579) | | 42583 | 다리를 지나는 트럭 | [42583_다리를_지나는_트럭.js](Level2/42583_다리를_지나는_트럭.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42583) | | 42584 | 주식가격 | [42584_주식가격.js](Level2/42584_주식가격.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42584) | @@ -44,7 +45,7 @@ | 68645 | 삼각 달팽이 | [68645_삼각_달팽이.js](Level2/68645_삼각_달팽이.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68645) | | 68936 | 쿼드압축 후 개수 세기 | [68936_쿼드압축_후_개수_세기.js](Level2/68936_쿼드압축_후_개수_세기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68936) | | 70129 | 이진 변환 반복하기 | [70129_이진_변환_반복하기.js](Level2/70129_이진_변환_반복하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/70129) | -| 72411 | 메뉴 리뉴얼 | [72411_메뉴_리뉴얼.js](Level2/72411_메뉴_리뉴얼.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/72411) | +| 72411 | 메뉴 리뉴얼 | [72411_메뉴_리뉴얼.js](Level2/72411_메뉴_리뉴얼.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/72411) | | 76502 | 괄호 회전하기 | [76502_괄호_회전하기.js](Level2/76502_괄호_회전하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/76502) | | 77484 | 로또의 최고 순위와 최저 순위 | [77484_로또의_최고_순위와_최저_순위.js](Level1/77484_로또의_최고_순위와_최저_순위.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77484) | | 77885 | 2개 이하로 다른 비트 | [77885_2개_이하로_다른_비트.js](Level2/77885_2개_이하로_다른_비트.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77885) | From e457424e5260af54366bc14e4a9815a8bab37abe Mon Sep 17 00:00:00 2001 From: yoouyeon Date: Tue, 7 Oct 2025 22:32:18 +0900 Subject: [PATCH 3/4] =?UTF-8?q?=F0=9F=92=A1=20=ED=94=84=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EB=9E=98=EB=A8=B8=EC=8A=A4=2017684=20-=20[3=EC=B0=A8]=20?= =?UTF-8?q?=EC=95=95=EC=B6=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\354\260\250]_\354\225\225\354\266\225.js" | 39 +++++++++++++++++++ Programmers/README.md | 1 + 2 files changed, 40 insertions(+) create mode 100644 "Programmers/Level2/17684_[3\354\260\250]_\354\225\225\354\266\225.js" diff --git "a/Programmers/Level2/17684_[3\354\260\250]_\354\225\225\354\266\225.js" "b/Programmers/Level2/17684_[3\354\260\250]_\354\225\225\354\266\225.js" new file mode 100644 index 0000000..1b8c33c --- /dev/null +++ "b/Programmers/Level2/17684_[3\354\260\250]_\354\225\225\354\266\225.js" @@ -0,0 +1,39 @@ +/* +⭐️ 문제 정보 ⭐️ +문제 : 17684 - [3차] 압축 +레벨 : Level 2 +링크 : https://school.programmers.co.kr/learn/courses/30/lessons/17684 +*/ + +function solution(msg) { + const answer = []; + // 1. 길이가 1인 모든 단어를 포함하도록 사전을 초기화 + const dict = new Map(); + const CAPITAL_A = 65; + for (let i = 0; i < 26; i++) { + dict.set(String.fromCharCode(CAPITAL_A + i), i + 1); + } + // msg 압축 + let cursor = 0; + while (cursor < msg.length) { + // 2. 사전에서 현재 입력과 일치하는 가장 긴 문자열 w 찾기 + let offset = 1; + while ( + cursor + offset <= msg.length && + dict.has(msg.slice(cursor, cursor + offset)) + ) { + offset++; + } + const w = msg.slice(cursor, cursor + offset - 1); + // 3. w에 해당하는 사전의 색인 번호 출력 + answer.push(dict.get(w)); + // 4. 입력에서 처리되지 않은 다음 글자가 남아 있다면 (c) w+c에 해당하는 단어를 사전에 등록한다. (인덱스는 사전의 가장 마지막 인덱스) + if (cursor + offset - 1 < msg.length) { + const c = msg[cursor + offset - 1]; + dict.set(w + c, dict.size + 1); + } + // 5. 입력에서 w 제거 + cursor = cursor + offset - 1; + } + return answer; +} diff --git a/Programmers/README.md b/Programmers/README.md index cc90421..51a7f41 100644 --- a/Programmers/README.md +++ b/Programmers/README.md @@ -19,6 +19,7 @@ | 17677 | [1차] 뉴스 클러스터링 | [17677_[1차]_뉴스_클러스터링.js](Level2/17677_[1차]_뉴스_클러스터링.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17677) | | 17678 | [1차] 셔틀버스 | [17678_[1차]_셔틀버스.js](Level3/17678_[1차]_셔틀버스.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17678) | | 17680 | [1차] 캐시 | [17680_[1차]_캐시.js](Level2/17680_[1차]_캐시.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17680) | +| 17684 | [3차] 압축 | [17684_[3차]_압축.js](Level2/17684_[3차]_압축.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17684) | | 17686 | [3차] 파일명 정렬 | [17686_[3차]_파일명_정렬.js](Level2/17686_[3차]_파일명_정렬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17686) | | 17687 | n진수 게임 | [17687_n진수_게임.js](Level2/17687_n진수_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17687) | | 42576 | 완주하지 못한 선수 | [42576_완주하지_못한_선수.js](Level1/42576_완주하지_못한_선수.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42576) | From 392f8cbd03b2ec77607df18853f54eb689751010 Mon Sep 17 00:00:00 2001 From: yoouyeon Date: Tue, 7 Oct 2025 23:23:23 +0900 Subject: [PATCH 4/4] =?UTF-8?q?=F0=9F=93=9D=20markdown=20=ED=8F=AC?= =?UTF-8?q?=EB=A7=B7=ED=8C=85,=20=EB=A7=81=ED=81=AC=20=EC=97=85=EB=8D=B0?= =?UTF-8?q?=EC=9D=B4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Programmers/README.md | 128 +++++++++++++++++++++--------------------- 1 file changed, 65 insertions(+), 63 deletions(-) diff --git a/Programmers/README.md b/Programmers/README.md index 51a7f41..d3ecf20 100644 --- a/Programmers/README.md +++ b/Programmers/README.md @@ -2,68 +2,70 @@ [프로그래머스](https://school.programmers.co.kr/)에서 푼 문제들의 모음 +[✏️ 문제 노트 링크 (노션)](https://yoouyeon.notion.site/285b05fd3a2380c2b353e722c6203bf3) + ## 💡 문제 목록 -| 문제 번호 | 문제 이름 | 풀이 코드 | 문제 링크 | -| --------- | --------- | --------- | --------- | -| 1845 | 폰켓몬 | [1845_폰켓몬.js](Level1/1845_폰켓몬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/1845) | -| 12906 | 같은 숫자는 싫어 | [12906_같은_숫자는_싫어.js](Level1/12906_같은_숫자는_싫어.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12906) | -| 12909 | 올바른 괄호 | [12909_올바른_괄호.js](Level2/12909_올바른_괄호.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12909) | -| 12910 | 나누어 떨어지는 숫자 배열 | [12910_나누어_떨어지는_숫자_배열.js](Level1/12910_나누어_떨어지는_숫자_배열.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12910) | -| 12924 | 숫자의 표현 | [12924_숫자의_표현.js](Level2/12924_숫자의_표현.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12924) | -| 12939 | 최댓값과 최솟값 | [12939_최댓값과_최솟값.js](Level2/12939_최댓값과_최솟값.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12939) | -| 12941 | 최솟값 만들기 | [12941_최솟값_만들기.js](Level2/12941_최솟값_만들기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12941) | -| 12949 | 행렬의 곱셈 | [12949_행렬의_곱셈.js](Level2/12949_행렬의_곱셈.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12949) | -| 12973 | 짝지어 제거하기 | [12973_짝지어_제거하기.js](Level2/12973_짝지어_제거하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12973) | -| 12987 | 숫자 게임 | [12987_숫자_게임.js](Level3/12987_숫자_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12987) | -| 17677 | [1차] 뉴스 클러스터링 | [17677_[1차]_뉴스_클러스터링.js](Level2/17677_[1차]_뉴스_클러스터링.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17677) | -| 17678 | [1차] 셔틀버스 | [17678_[1차]_셔틀버스.js](Level3/17678_[1차]_셔틀버스.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17678) | -| 17680 | [1차] 캐시 | [17680_[1차]_캐시.js](Level2/17680_[1차]_캐시.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17680) | -| 17684 | [3차] 압축 | [17684_[3차]_압축.js](Level2/17684_[3차]_압축.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17684) | -| 17686 | [3차] 파일명 정렬 | [17686_[3차]_파일명_정렬.js](Level2/17686_[3차]_파일명_정렬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17686) | -| 17687 | n진수 게임 | [17687_n진수_게임.js](Level2/17687_n진수_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17687) | -| 42576 | 완주하지 못한 선수 | [42576_완주하지_못한_선수.js](Level1/42576_완주하지_못한_선수.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42576) | -| 42578 | 의상 | [42578_의상.js](Level2/42578_의상.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42578) | -| 42579 | 베스트앨범 | [42579_베스트앨범.js](Level3/42579_베스트앨범.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42579) | -| 42583 | 다리를 지나는 트럭 | [42583_다리를_지나는_트럭.js](Level2/42583_다리를_지나는_트럭.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42583) | -| 42584 | 주식가격 | [42584_주식가격.js](Level2/42584_주식가격.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42584) | -| 42586 | 기능개발 | [42586_기능개발.js](Level2/42586_기능개발.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42586) | -| 42840 | 모의고사 | [42840_모의고사.js](Level1/42840_모의고사.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42840) | -| 42888 | 오픈채팅방 | [42888_오픈채팅방.js](Level2/42888_오픈채팅방.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42888) | -| 42889 | 실패율 | [42889_실패율.js](Level1/42889_실패율.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42889) | -| 49993 | 스킬트리 | [49993_스킬트리.js](Level2/49993_스킬트리.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/49993) | -| 49994 | 방문 길이 | [49994_방문_길이.js](Level2/49994_방문_길이.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/49994) | -| 60057 | 문자열 압축 | [60057_문자열_압축.js](Level2/60057_문자열_압축.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/60057) | -| 60062 | 외벽 점검 | [60062_외벽_점검.js](60062_외벽_점검.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/60062) | -| 64061 | 크레인 인형뽑기 게임 | [64061_크레인_인형뽑기_게임.js](Level1/64061_크레인_인형뽑기_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64061) | -| 64062 | 징검다리 건너기 | [64062_징검다리_건너기.js](Level3/64062_징검다리_건너기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64062) | -| 64064 | 불량 사용자 | [64064_불량_사용자.js](Level3/64064_불량_사용자.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64064) | -| 64065 | 튜플 | [64065_튜플.js](Level2/64065_튜플.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64065) | -| 67256 | 키패드 누르기 | [67256_키패드_누르기.js](Level1/67256_키패드_누르기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67256) | -| 67257 | 수식 최대화 | [67257_수식_최대화.js](Level2/67257_수식_최대화.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67257) | -| 67258 | 보석 쇼핑 | [67258_보석_쇼핑.js](Level3/67258_보석_쇼핑.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67258) | -| 68644 | 두 개 뽑아서 더하기 | [68644_두_개_뽑아서_더하기.js](Level1/68644_두_개_뽑아서_더하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68644) | -| 68645 | 삼각 달팽이 | [68645_삼각_달팽이.js](Level2/68645_삼각_달팽이.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68645) | -| 68936 | 쿼드압축 후 개수 세기 | [68936_쿼드압축_후_개수_세기.js](Level2/68936_쿼드압축_후_개수_세기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68936) | -| 70129 | 이진 변환 반복하기 | [70129_이진_변환_반복하기.js](Level2/70129_이진_변환_반복하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/70129) | -| 72411 | 메뉴 리뉴얼 | [72411_메뉴_리뉴얼.js](Level2/72411_메뉴_리뉴얼.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/72411) | -| 76502 | 괄호 회전하기 | [76502_괄호_회전하기.js](Level2/76502_괄호_회전하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/76502) | -| 77484 | 로또의 최고 순위와 최저 순위 | [77484_로또의_최고_순위와_최저_순위.js](Level1/77484_로또의_최고_순위와_최저_순위.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77484) | -| 77885 | 2개 이하로 다른 비트 | [77885_2개_이하로_다른_비트.js](Level2/77885_2개_이하로_다른_비트.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77885) | -| 81303 | 표 편집 | [81303_표_편집.js](Level3/81303_표_편집.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/81303) | -| 87390 | n^2 배열 자르기 | [87390_n^2_배열_자르기.js](Level2/87390_n^2_배열_자르기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/87390) | -| 92334 | 신고 결과 받기 | [92334_신고_결과_받기.js](Level1/92334_신고_결과_받기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/92334) | -| 92341 | 주차 요금 계산 | [92341_주차_요금_계산.js](Level2/92341_주차_요금_계산.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/92341) | -| 118666 | 성격 유형 검사하기 | [118666_성격_유형_검사하기.js](Level1/118666_성격_유형_검사하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118666) | -| 118667 | 두 큐 합 같게 만들기 | [118667_두_큐_합_같게_만들기.js](Level2/118667_두_큐_합_같게_만들기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118667) | -| 118669 | 등산코스 정하기 | [118669_등산코스_정하기.js](118669_등산코스_정하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118669) | -| 120817 | 배열의 평균값 | [120817_배열의_평균값.js](Level0/120817_배열의_평균값.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120817) | -| 120821 | 배열 뒤집기 | [120821_배열_뒤집기.js](Level0/120821_배열_뒤집기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120821) | -| 120853 | 컨트롤 제트 | [120853_컨트롤_제트.js](Level0/120853_컨트롤_제트.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120853) | -| 121683 | 외톨이 알파벳.cpp | [121683_외톨이_알파벳.cpp](Unrated/121683_외톨이_알파벳.cpp) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/121683) | -| 121683 | 외톨이 알파벳 | [121683_외톨이_알파벳.js](Unrated/121683_외톨이_알파벳.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/121683) | -| 131127 | 할인 행사 | [131127_할인_행사.js](Level2/131127_할인_행사.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/131127) | -| 150370 | 개인정보 수집 유효기간 | [150370_개인정보_수집_유효기간.js](Level1/150370_개인정보_수집_유효기간.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/150370) | -| 159994 | 카드 뭉치 | [159994_카드_뭉치.js](Level1/159994_카드_뭉치.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/159994) | -| 258711 | 도넛과 막대 그래프 | [258711_도넛과_막대_그래프.js](Level2/258711_도넛과_막대_그래프.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/258711) | -| 340212 | [PCCP 기출문제] 2번 퍼즐 게임 챌린지 | [340212_[PCCP_기출문제]_2번_퍼즐_게임_챌린지.js](Level2/340212_[PCCP_기출문제]_2번_퍼즐_게임_챌린지.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/340212) | +| 문제 번호 | 문제 이름 | 풀이 코드 | 문제 링크 | +| --------- | ------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | +| 1845 | 폰켓몬 | [1845\_폰켓몬.js](Level1/1845_폰켓몬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/1845) | +| 12906 | 같은 숫자는 싫어 | [12906*같은*숫자는\_싫어.js](Level1/12906_같은_숫자는_싫어.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12906) | +| 12909 | 올바른 괄호 | [12909*올바른*괄호.js](Level2/12909_올바른_괄호.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12909) | +| 12910 | 나누어 떨어지는 숫자 배열 | [12910*나누어*떨어지는*숫자*배열.js](Level1/12910_나누어_떨어지는_숫자_배열.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12910) | +| 12924 | 숫자의 표현 | [12924*숫자의*표현.js](Level2/12924_숫자의_표현.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12924) | +| 12939 | 최댓값과 최솟값 | [12939*최댓값과*최솟값.js](Level2/12939_최댓값과_최솟값.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12939) | +| 12941 | 최솟값 만들기 | [12941*최솟값*만들기.js](Level2/12941_최솟값_만들기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12941) | +| 12949 | 행렬의 곱셈 | [12949*행렬의*곱셈.js](Level2/12949_행렬의_곱셈.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12949) | +| 12973 | 짝지어 제거하기 | [12973*짝지어*제거하기.js](Level2/12973_짝지어_제거하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12973) | +| 12987 | 숫자 게임 | [12987*숫자*게임.js](Level3/12987_숫자_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/12987) | +| 17677 | [1차] 뉴스 클러스터링 | [17677*[1차]*뉴스\_클러스터링.js](Level2/17677_[1차]_뉴스_클러스터링.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17677) | +| 17678 | [1차] 셔틀버스 | [17678*[1차]*셔틀버스.js](Level3/17678_[1차]_셔틀버스.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17678) | +| 17680 | [1차] 캐시 | [17680*[1차]*캐시.js](Level2/17680_[1차]_캐시.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17680) | +| 17684 | [3차] 압축 | [17684*[3차]*압축.js](Level2/17684_[3차]_압축.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17684) | +| 17686 | [3차] 파일명 정렬 | [17686*[3차]*파일명\_정렬.js](Level2/17686_[3차]_파일명_정렬.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17686) | +| 17687 | n진수 게임 | [17687*n진수*게임.js](Level2/17687_n진수_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/17687) | +| 42576 | 완주하지 못한 선수 | [42576*완주하지*못한\_선수.js](Level1/42576_완주하지_못한_선수.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42576) | +| 42578 | 의상 | [42578\_의상.js](Level2/42578_의상.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42578) | +| 42579 | 베스트앨범 | [42579\_베스트앨범.js](Level3/42579_베스트앨범.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42579) | +| 42583 | 다리를 지나는 트럭 | [42583*다리를*지나는\_트럭.js](Level2/42583_다리를_지나는_트럭.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42583) | +| 42584 | 주식가격 | [42584\_주식가격.js](Level2/42584_주식가격.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42584) | +| 42586 | 기능개발 | [42586\_기능개발.js](Level2/42586_기능개발.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42586) | +| 42840 | 모의고사 | [42840\_모의고사.js](Level1/42840_모의고사.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42840) | +| 42888 | 오픈채팅방 | [42888\_오픈채팅방.js](Level2/42888_오픈채팅방.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42888) | +| 42889 | 실패율 | [42889\_실패율.js](Level1/42889_실패율.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/42889) | +| 49993 | 스킬트리 | [49993\_스킬트리.js](Level2/49993_스킬트리.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/49993) | +| 49994 | 방문 길이 | [49994*방문*길이.js](Level2/49994_방문_길이.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/49994) | +| 60057 | 문자열 압축 | [60057*문자열*압축.js](Level2/60057_문자열_압축.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/60057) | +| 60062 | 외벽 점검 | [60062*외벽*점검.js](60062_외벽_점검.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/60062) | +| 64061 | 크레인 인형뽑기 게임 | [64061*크레인*인형뽑기\_게임.js](Level1/64061_크레인_인형뽑기_게임.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64061) | +| 64062 | 징검다리 건너기 | [64062*징검다리*건너기.js](Level3/64062_징검다리_건너기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64062) | +| 64064 | 불량 사용자 | [64064*불량*사용자.js](Level3/64064_불량_사용자.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64064) | +| 64065 | 튜플 | [64065\_튜플.js](Level2/64065_튜플.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/64065) | +| 67256 | 키패드 누르기 | [67256*키패드*누르기.js](Level1/67256_키패드_누르기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67256) | +| 67257 | 수식 최대화 | [67257*수식*최대화.js](Level2/67257_수식_최대화.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67257) | +| 67258 | 보석 쇼핑 | [67258*보석*쇼핑.js](Level3/67258_보석_쇼핑.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/67258) | +| 68644 | 두 개 뽑아서 더하기 | [68644*두*개*뽑아서*더하기.js](Level1/68644_두_개_뽑아서_더하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68644) | +| 68645 | 삼각 달팽이 | [68645*삼각*달팽이.js](Level2/68645_삼각_달팽이.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68645) | +| 68936 | 쿼드압축 후 개수 세기 | [68936*쿼드압축*후*개수*세기.js](Level2/68936_쿼드압축_후_개수_세기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/68936) | +| 70129 | 이진 변환 반복하기 | [70129*이진*변환\_반복하기.js](Level2/70129_이진_변환_반복하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/70129) | +| 72411 | 메뉴 리뉴얼 | [72411*메뉴*리뉴얼.js](Level2/72411_메뉴_리뉴얼.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/72411) | +| 76502 | 괄호 회전하기 | [76502*괄호*회전하기.js](Level2/76502_괄호_회전하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/76502) | +| 77484 | 로또의 최고 순위와 최저 순위 | [77484*로또의*최고*순위와*최저\_순위.js](Level1/77484_로또의_최고_순위와_최저_순위.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77484) | +| 77885 | 2개 이하로 다른 비트 | [77885*2개*이하로*다른*비트.js](Level2/77885_2개_이하로_다른_비트.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/77885) | +| 81303 | 표 편집 | [81303*표*편집.js](Level3/81303_표_편집.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/81303) | +| 87390 | n^2 배열 자르기 | [87390*n^2*배열\_자르기.js](Level2/87390_n^2_배열_자르기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/87390) | +| 92334 | 신고 결과 받기 | [92334*신고*결과\_받기.js](Level1/92334_신고_결과_받기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/92334) | +| 92341 | 주차 요금 계산 | [92341*주차*요금\_계산.js](Level2/92341_주차_요금_계산.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/92341) | +| 118666 | 성격 유형 검사하기 | [118666*성격*유형\_검사하기.js](Level1/118666_성격_유형_검사하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118666) | +| 118667 | 두 큐 합 같게 만들기 | [118667*두*큐*합*같게\_만들기.js](Level2/118667_두_큐_합_같게_만들기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118667) | +| 118669 | 등산코스 정하기 | [118669*등산코스*정하기.js](118669_등산코스_정하기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/118669) | +| 120817 | 배열의 평균값 | [120817*배열의*평균값.js](Level0/120817_배열의_평균값.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120817) | +| 120821 | 배열 뒤집기 | [120821*배열*뒤집기.js](Level0/120821_배열_뒤집기.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120821) | +| 120853 | 컨트롤 제트 | [120853*컨트롤*제트.js](Level0/120853_컨트롤_제트.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/120853) | +| 121683 | 외톨이 알파벳.cpp | [121683*외톨이*알파벳.cpp](Unrated/121683_외톨이_알파벳.cpp) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/121683) | +| 121683 | 외톨이 알파벳 | [121683*외톨이*알파벳.js](Unrated/121683_외톨이_알파벳.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/121683) | +| 131127 | 할인 행사 | [131127*할인*행사.js](Level2/131127_할인_행사.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/131127) | +| 150370 | 개인정보 수집 유효기간 | [150370*개인정보*수집\_유효기간.js](Level1/150370_개인정보_수집_유효기간.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/150370) | +| 159994 | 카드 뭉치 | [159994*카드*뭉치.js](Level1/159994_카드_뭉치.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/159994) | +| 258711 | 도넛과 막대 그래프 | [258711*도넛과*막대\_그래프.js](Level2/258711_도넛과_막대_그래프.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/258711) | +| 340212 | [PCCP 기출문제] 2번 퍼즐 게임 챌린지 | [340212*[PCCP*기출문제]*2번*퍼즐*게임*챌린지.js](Level2/340212_[PCCP_기출문제]_2번_퍼즐_게임_챌린지.js) | [🔗](https://school.programmers.co.kr/learn/courses/30/lessons/340212) |