142691 백준(BOJ) 14269 전설의 쌍검 용사(Python) 그리디 문제. 오른손에 들어야 하는 검의 길이는 고정이기 때문에, set에 모든 A를 저장해 중복을 제거한 뒤 오름차순 정렬해 저장했다. 이 검들은 왼손에는 사용해도 되고 하지 않아도 되지만, 반드시 챙겨가야하는 검들이다. 왼손에 들어야 하는 검의 길이는 [B,C] 형태의 구간을 띄기 때문에, 모든 적의 [A, B, C]를 B 기준으로 오름차순 정렬한 뒤 C 기준으로 내림차순 정렬했다. 이렇게 정렬한 이유는, C가 같은 모든 적에 대해서 그 중 가장 B가 큰 적의 [B, C] 구간에 현재 왼손에 들 검이 존재한다면 C가 같은 모든 적에 대해 왼손에 드는 검을 만족시킬 수 있기 때문이다. 그 다음에는 위 set에 저장해둔, 반드시 챙겨가야하는 검들을 오름차순으로 확인하며 현재 보고 있는 검이 현재 구간에 .. 2023. 1. 31. 이전 1 다음