본문 바로가기

LeetCode52

[Leetcode]932. Beautiful Array 문제 요약알고리즘 분류: 분할정복난이도: Medium문제내용:nums는 [1, n] 범위의 정수들의 순열입니다.모든 0 정수 n이 주어졌을 때, 길이가 n인 임의의 아름다운 배열 nums를 반환하세요. 주어진 n에 대해 적어도 하나의 유효한 답이 존재합니다.사이트 주소: https://leetcode.com/problems/beautiful-array/description/문제풀이이 문제를 풀기 위한 핵심 통찰은 분할 정복(Divide and Conquer)을 활용하는 것입니다. 분할 정복에 대한 내용은 아래 글에서 확인 해보면 됩니다.https://jih3508.tistory.com/282 [알고리즘 이론] 분할 정복(Divide and Conquer)분할 정복(Divide and Conquer) 알고.. 2025. 5. 14.
[Leetcode]1306. Jump Game III 문제 요약알고리즘 분류: Tree, DFS, BFS난이도: Medium문제내용:배열 arr이 주어지고, 여러분은 처음에 start 인덱스에 위치해 있습니다.인덱스 i에 있을 때, 여러분은 i + arr[i] 또는 i - arr[i]로 점프할 수 있습니다.값이 0인 인덱스에 도달할 수 있는지 true, false로 반환 하면 됩니다.사이트 주소: https://leetcode.com/problems/jump-game-iii/description/문제풀이 이번 문제는 방향성 그래프는 아니지만 잘보면 간단하게 그래프 탐색으로 풀수 있는 문제이다. 그레프 탐색은 대표적으로 깊이 우선 탐색(DFS), 넓이 우선 탐색(BFS)이 있다. 그래프 탐색에 대한 내용은 아래 글에서 확인 해보면 된다.깊이 우선 탐색(DFS.. 2025. 5. 7.
[Leetcode] 3016. Minimum Number of Pushes to Type Word II 문제 요약알고리즘 분류: 그리디, , 정렬, Counting 난이도: Medium문제내용:각 키(2~9)는 서로 다른 알파벳 집합에 매핑될 수 있습니다.키는 어떤 개수의 문자로든 재매핑할 수 있습니다.각 알파벳은 정확히 하나의 키에만 매핑되어야 합니다.키에 매핑된 n번째 문자를 입력하려면 키를 n번 눌러야 합니다.예: 키 '2'에 ['a','b','c']가 매핑되면, 'a'는 1번, 'b'는 2번, 'c'는 3번 눌러야 합니다.주어진 단어 word를 입력하기 위한 최소 키 누름 횟수를 반환하세요.사이트 주소: https://leetcode.com/problems/minimum-number-of-pushes-to-type-word-ii/description/문제풀이이번 문제에서는 완전탐색으로 풀수 있지만.. 2025. 5. 6.
[Leetcode] 881. Boats to Save People 문제 요약알고리즘 분류: 그리디, 투 포인터, 정렬난이도: Medium문제내용:각 보트는 최대 2명까지만 태울 수 있습니다.보트에 태운 사람들의 몸무게 합은 limit를 초과할 수 없습니다.모든 사람을 태우기 위한 최소 보트 수를 구해야 합니다.사이트 주소: https://leetcode.com/problems/boats-to-save-people/description/문제풀이 이번 문제에서는 완전탐색으로 풀수 있지만 최대 크기가 10^5인점으로 고려하면 다른 방법으로 풀어야 한다. 그래서 이번에는 그리디와 투 포인트로 풀어야 한다. 그에 대한 이론 설명은 아래 글에 확인 해보면 됩니다.그리디: https://jih3508.tistory.com/70투 포인터: https://jih3508.tistory.. 2025. 4. 28.
[Leetcode] 1833. Maximum Ice Cream Bars 문제 요약알고리즘 분류: 그리디, 계수 정렬난이도: Medium문제내용:각 아이스크림 바의 가격은 costs 배열에 저장되어 있습니다. 소년은 처음에 coins 코인을 가지고 있으며, 가능한 많은 아이스크림 바를 구매하고 싶어합니다.주어진 coins 코인으로 소년이 살 수 있는 최대 아이스크림 바의 개수를 반환해야 한다.사이트 주소: https://leetcode.com/problems/maximum-ice-cream-bars/description/ 문제풀이 이번 문제에서는 완전탐색으로 풀수 있지만 최대 크기가 10^5인점으로 고려하면 다른 방법으로 풀어야 한다. 그래서 이번에는 그리디나 계수정렬로 풀어야 한다. 그에 대한 이론 설명은 아래 글에 확인 해보면 된다.그리디: https://jih3508... 2025. 4. 23.
[Leetcode] 802. Find Eventual Safe States 문제 요약알고리즘 분류: 백트레킹, 수학, 배열난이도: Medium문제내용:개의 노드로 구성된 방향 그래프가 있으며, 각 노드는 0부터 n - 1까지 레이블이 지정되어 있습니다.그래프는 0-인덱스 기반의 2D 정수 배열 graph로 표현되는데, graph[i]는 노드 i에 인접한 노드들의 정수 배열입니다.터미널 노드(Terminal Node): 나가는 간선이 없는 노드입니다.안전 노드(Safe Node): 해당 노드에서 시작하는 모든 가능한 경로가 터미널 노드나 다른 안전 노드로 이어지는 노드입니다.사이트 주소: 문제풀이 이 문제는 얼핏 보면 복잡해 보이지만, 그래프 이론의 위상 정렬(Topological Sort)을 응용하여 해결할 수 있습니다. 여기서 주요 인사이트는 문제를 역방향으로 생각하는 것입.. 2025. 4. 22.