이 문제는 다른 D4문제보다는 쉬웠던 것 같다. 처음에는 D4를 보고 DP로 풀어야 하나 생각했지만 N(검증 값의 길이)가 최대 20인 것을 보고 Itertools 라이브러리를 사용하면 풀 수 있지 않을까? 생각했다.
문제를 간략히 설명하자면 점원들이 선반의 물체만 한 탑을 쌓는데(점원들의 키의 합) 선반의 물체보다 높지만 가장 낮은 탑을 쌓는 경우 선반 높이와 점원들의 키의 차이를 구하는 문제이다.
문제를 살짝 봤을 때 DP로 풀어야하는 문제인가 싶었지만 위에서 말했듯이 점원들의 수가 최대 20명이었기 때문에 부분집합으로 풀 수 있었고, 더하여 집합을 만드는데 조건도 없었기 때문에 라이브러리를 사용할 수 있었다.
이를 코드로 나타내면
이렇게 나타낼 수 있다.
이번문제는 어떻게 푸는 문제인지 확실히 감잡는다면 쉬운 문제인 것 같다. 역시 문제를 많이 풀어보면서 어떤 문제를 만나더라도 아! 이렇게 푸는 문제구나 깨달을 경지가 되도록 연습하는 게 중요한 것 같다.
오늘도 파이팅!
'알고리즘' 카테고리의 다른 글
[PROGRAMMERS] 2017 팁스타운 : 예상 대진표 Python (0) | 2022.05.14 |
---|---|
[SWEA] D4 : 길찾기 Python (0) | 2022.05.14 |
[SWEA] D4 : 하나로(3459) Python (0) | 2022.05.11 |
[PROGRAMMERS] 2018 KAKAO BLIND RECRUITMENT : 뉴스클러스터링 Python (0) | 2022.05.10 |
[PROGRAMMERS] 깊이/너비 우선 탐색 : 여행경로 Python (0) | 2022.05.09 |