알고리즘/문제풀이

[Python] Programmers 위클리 8주차 최소직사각형

정찡이 2021. 10. 5. 13:29
728x90

1. 문제 링크

https://programmers.co.kr/learn/courses/30/lessons/86491

 

코딩테스트 연습 - 8주차_최소직사각형

[[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133

programmers.co.kr


2. 문제 요약

  • 모든 명함을 수납할 수 있는 가장 작은 지갑 만들기


3. 아이디어 정리

  1. 가로길이 세로 길이 정렬을 명함 별 진행을 한다.
  2. 작은 값 중 가장 긴 길이를 찾는다.
  3. 큰 값 중 가장 긴 길이를 찾는다.
  4. 2.3 값으로 지갑의 크기를 구한다.

4. 문제 풀이

4-1. 내 풀이

def solution(sizes):
    # 1. 정렬을 한다.
    [s.sort() for s in sizes]
    # 2. 정렬한 것을 기준으로 가장 큰 값 찾기
    w_max = max([a[0] for a in sizes])
    h_max = max([a[1] for a in sizes])
    return w_max * h_max

 


5. 결론

  • 정렬 문제
반응형