반응형
2565
-
백준 2565번 - 전깃줄 (LIS / DP / 이분 탐색) 파이썬개발/알고리즘 2025. 3. 28. 16:20
📌 백준 2565번 - 전깃줄 (LIS / DP / 이분 탐색)✨ 문제 요약두 전봇대(A, B)가 있고, 각각의 전깃줄이 A의 위치와 B의 위치를 쌍으로 갖는다.전깃줄이 서로 교차하지 않도록 하기 위해 최소 몇 개를 제거해야 하는지 구하는 문제다.🧠 문제 해석전깃줄이 교차하지 않으려면 A에서의 순서가 증가할 때, B에서도 증가해야 한다.즉, A를 기준으로 정렬하면남은 B 값들이 가장 긴 증가하는 부분 수열(LIS)이 되도록 전깃줄을 선택하면 됨.✅ 정답 로직전깃줄 목록을 A 기준으로 오름차순 정렬한다.정렬된 리스트에서 B 값들만 추출한다.B 값들에서 LIS를 구한 뒤,전체 전깃줄 수 - LIS 길이 = 제거할 전깃줄 수🧱 DP 풀이 (O(N²))N = int(input())arr = [tuple(m..