반응형
[C] LeetCode 329. Longest Increasing Path in a Matrix
Coding/PS2026. 5. 23. 02:41[C] LeetCode 329. Longest Increasing Path in a Matrix

문제번역m by n 정수 배열 matrix가 주어진다.이때 matrix에서 가장 긴 증가하는 길의 길이를 반환해라.각 셀에서, 우리는 상하좌우로만 움직일 수 있다. 대각선으로 움직이거나 경계 밖으로 나갈 수는 없다.접근 방법 및 소스코드Hard 단계라서 처음에 조금 두려웠는데, 생각보다 쉽게 풀렸다.DP를 사용한 풀이로 접근하면 된다. 각 칸을 그래프의 노드로 보고 상하좌우 중 현재 값보다 큰 값을 갖는 노드로 이동한다.DFS를 통해 해당 칸에서 시작하는 최대 증가 경로 길이를 위해 자신을 기준으로 해 상하좌우 노드를 탐색한다.같은 칸의 결과를 재계산하지 않도록 DP를 통해 저장하고 재사용한다(메모이제이션 기법) 이를 코드로 구현하면 다음과 같이 작성할 수 있다. int m,n;int dr[4] = {-..

[C] LeetCode 207. Course Schedule
Coding/PS2026. 5. 23. 02:23[C] LeetCode 207. Course Schedule

문제번역총 numCourses 개의 과목이 있고, 0번부터 numCourses-1번까지 번호로 라벨링이 되어 있다.prerequisites 배열의 i번째 원소는 a, b로 되어 있는데, 이는 a과목을 듣기 위해서는 b과목을 먼저 들어야 한다는 것을 의미한다.(선수과목)만약 모든 과목을 들을 수 있다면 true를, 그게 불가능 하다면 false를 반환해라. 접근 방법 및 소스코드선수과목의 관계를 방향 그래프로 생각해보자. 자료구조개론과 알고리즘개론 수업이 있다고 해보자.알고리즘개론 수업을 듣기 위해서는 자료구조개론 수업을 먼저 들어야 한다.이 경우에는 자료구조개론 -> 알고리즘개론 으로 간선이 그려질 것이다.이와 함께 자료구조개론 수업을 듣기 위해서는 알고리즘개론 수업을 먼저 들어야 한다.이 경우에는 알고..

[C] LeetCode 841. Keys and Rooms
Coding/PS2026. 5. 23. 02:06[C] LeetCode 841. Keys and Rooms

문제 번역 0번부터 n-1번까지의 번호가 붙은 n개의 방이 있고, 0번 방을 제외한 모든 방은 잠겨있다.우리의 목표는 모든 방을 방문하는 것이다. 하지만, 너는 열쇠 없이는 방에 들어갈 수 없다. 우리가 방에 방문한다면 구별되는 키들의 집합을 찾을 수 있을 것이다(여기에는 공집합이 있을 수 있다, 다시 말해 비어있다.) 각 키의 번호가 각 방을 열 수 있는 열쇠이다. rooms 배열의 i번째 원소는 i번째 방을 방문했을 때 얻을 수 있는 키들이다. 만약 모든 방을 방문할 수 있다면 true를, 불가능하다면 false를 반환해라. 접근 방법 및 소스코드0번 노드부터 시작하는 DFS/BFS 탐색으로 접근하면 된다.0번 노드에서 얻은 키는 0번 노드와 연결된 방들이고, 이 키들을 stack/queue 등에 넣..

프로그래머스 고득점 Kit - 전력망을 둘로 나누기
Coding/PS2025. 2. 28. 20:19프로그래머스 고득점 Kit - 전력망을 둘로 나누기

Problemhttps://school.programmers.co.kr/learn/courses/30/lessons/86971 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr\(n\) 개의 송전탑이 전선을 통해 하나의 트리로 연결되어 있다.전선들 중 하나를 끊어 전력망 네트워크를 2개로 분할하려 한다.이때, 두 전력망의 송전탑의 개수를 최대한 비슷하게 맞추고자 한다.송전탑의 개수와 전선 정보가 주어질 때, 두 전력망이 가지고 있는 송전탑 개수 차이의 절댓값을 반환해라.Input / Output Examplesnwiresresult9[[1,3],[2,3],[3,4],[4,5],[4,6],[4,7],[7,8..

반응형
image