[프로그래머스/Java] 12946 - [level 2] 하노이의 탑
·
코딩테스트/프로그래머스
[level 2] 하노이의 탑 - 12946문제 링크성능 요약메모리: 129 MB, 시간: 5.07 ms구분코딩테스트 연습 > 연습문제채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2025년 03월 22일 16:05:33문제 설명하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대로 쌓여 있습니다. 게임의 목적은 다음 두 가지 조건을 만족시키면서, 한 기둥에 꽂힌 원판들을 그 순서 그대로 다른 기둥으로 옮겨서 다시 쌓는 것입니다.한 번에 하나의 원판만 옮길 수 있습니다.큰 원판이 작은 원판 위에 있어서는 안됩니다.하노이 탑의 세 개의 기..
[프로그래머스/Java] 12971 - [level 3] 스티커 모으기(2)
·
코딩테스트/프로그래머스
[level 3] 스티커 모으기(2) - 12971문제 링크성능 요약메모리: 76 MB, 시간: 7.62 ms구분코딩테스트 연습 > Summer/Winter Coding(~2018)채점결과정확성: 49.7효율성: 50.3합계: 100.0 / 100.0문제 설명N개의 스티커가 원형으로 연결되어 있습니다. 다음 그림은 N = 8인 경우의 예시입니다.원형으로 연결된 스티커에서 몇 장의 스티커를 뜯어내어 뜯어낸 스티커에 적힌 숫자의 합이 최대가 되도록 하고 싶습니다. 단 스티커 한 장을 뜯어내면 양쪽으로 인접해있는 스티커는 찢어져서 사용할 수 없게 됩니다.예를 들어 위 그림에서 14가 적힌 스티커를 뜯으면 인접해있는 10, 6이 적힌 스티커는 사용할 수 없습니다. 스티커에 적힌 숫자가 배열 형태로 주어질 때, ..
[level 2] 땅따먹기 - 12913
·
코딩테스트/프로그래머스
[level 2] 땅따먹기 - 12913문제 링크성능 요약메모리: 86.7 MB, 시간: 29.01 ms구분코딩테스트 연습 > 연습문제채점결과정확성: 59.8효율성: 40.2합계: 100.0 / 100.0제출 일자2024년 11월 24일 17:41:25문제 설명땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟으면서 내려와야 합니다. 단, 땅따먹기 게임에는 한 행씩 내려올 때, 같은 열을 연속해서 밟을 수 없는 특수 규칙이 있습니다.예를 들면,| 1 | 2 | 3 | 5 || 5 | 6 | 7 | 8 || 4 | 3 | 2 | 1 |로 땅이 주어졌다면,..
[level 3] 가장 먼 노드 - 49189
·
코딩테스트/프로그래머스
[level 3] 가장 먼 노드 - 49189문제 링크성능 요약메모리: 112 MB, 시간: 76.12 ms구분코딩테스트 연습 > 그래프채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2024년 11월 18일 14:57:34문제 설명n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다.노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 개인지를 return 하도록 solution 함수를 작성해주세요.제한사항노드의 개수..
[level 3] 아이템 줍기 - 87694
·
코딩테스트/프로그래머스
[level 3] 아이템 줍기 - 87694문제 링크성능 요약메모리: 77.1 MB, 시간: 1.51 ms구분코딩테스트 연습 > 깊이/너비 우선 탐색(DFS/BFS)채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2024년 11월 13일 16:32:14문제 설명다음과 같은 다각형 모양 지형에서 캐릭터가 아이템을 줍기 위해 이동하려 합니다.지형은 각 변이 x축, y축과 평행한 직사각형이 겹쳐진 형태로 표현하며, 캐릭터는 이 다각형의 둘레(굵은 선)를 따라서 이동합니다.만약 직사각형을 겹친 후 다음과 같이 중앙에 빈 공간이 생기는 경우, 다각형의 가장 바깥쪽 테두리가 캐릭터의 이동 경로가 됩니다.단, 서로 다른 두 직사각형의 x축 좌표 또는 y축 좌표가 같은 경우는 없습니다.즉, 위 그림처럼..
[level 3] 섬 연결하기 - 42861
·
코딩테스트/프로그래머스
[level 3] 섬 연결하기 - 42861문제 링크성능 요약메모리: 85.5 MB, 시간: 0.87 ms구분코딩테스트 연습 > 탐욕법(Greedy)채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2024년 11월 13일 14:31:07문제 설명n개의 섬 사이에 다리를 건설하는 비용(costs)이 주어질 때, 최소의 비용으로 모든 섬이 서로 통행 가능하도록 만들 때 필요한 최소 비용을 return 하도록 solution을 완성하세요.다리를 여러 번 건너더라도, 도달할 수만 있으면 통행 가능하다고 봅니다. 예를 들어 A 섬과 B 섬 사이에 다리가 있고, B 섬과 C 섬 사이에 다리가 있으면 A 섬과 C 섬은 서로 통행 가능합니다.제한사항섬의 개수 n은 1 이상 100 이하입니다.costs의..
[level 3] 등굣길 - 42898
·
코딩테스트/프로그래머스
[level 3] 등굣길 - 42898문제 링크성능 요약메모리: 51.8 MB, 시간: 1.05 ms구분코딩테스트 연습 > 동적계획법(Dynamic Programming)채점결과정확성: 50.0효율성: 50.0합계: 100.0 / 100.0제출 일자2024년 11월 12일 18:37:58문제 설명계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다.아래 그림은 m = 4, n = 3 인 경우입니다.가장 왼쪽 위, 즉 집이 있는 곳의 좌표는 (1, 1)로 나타내고 가장 오른쪽 아래, 즉 학교가 있는 곳의 좌표는 (m, n)으로 나타냅니다.격자의 크기 m, n과 물이 잠긴 지역의 좌표를..
[level 3] 다단계 칫솔 판매 - 77486
·
코딩테스트/프로그래머스
[level 3] 다단계 칫솔 판매 - 77486문제 링크성능 요약메모리: 126 MB, 시간: 61.13 ms구분코딩테스트 연습 > 2021 Dev-Matching: 웹 백엔드 개발자(상반기)채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2024년 11월 08일 21:46:24문제 설명민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, 조직을 운영하던 민호는 조직 내 누가 얼마만큼의 이득을 가져갔는지가 궁금해졌습니다. 예를 들어, 민호가 운영하고 있는 다단계 칫솔 판매 조직이 아래 그림과 같다고 합시다.민호는 center이며, 파란색 네모는 여덟 명의 판매..
[level 2] 큰 수 만들기 - 42883
·
코딩테스트/프로그래머스
[level 2] 큰 수 만들기 - 42883문제 링크성능 요약메모리: 116 MB, 시간: 76.25 ms구분코딩테스트 연습 > 탐욕법(Greedy)채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2024년 10월 31일 04:13:30문제 설명어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다.예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다.문자열 형식으로 숫자 number와 제거할 수의 개수 k가 solution 함수의 매개변수로 주어집니다. number에서 k 개의 수를 제거했을 때 만들 수 있는 수 중 가장 큰 숫자를 문자열 형태로 retur..
[level 3] 정수 삼각형 - 43105
·
코딩테스트/프로그래머스
[level 3] 정수 삼각형 - 43105문제 링크성능 요약메모리: 61.5 MB, 시간: 12.50 ms구분코딩테스트 연습 > 동적계획법(Dynamic Programming)채점결과정확성: 64.3효율성: 35.7합계: 100.0 / 100.0제출 일자2024년 10월 22일 10:31:46문제 설명위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다.삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성..