ror_coding

[Programmers] 최소직사각형 - 86491 본문

Algorithm/Python

[Programmers] 최소직사각형 - 86491

ro_rdil_31 2024. 10. 6. 15:56
728x90
728x90

한 줄 코드 보고 감탄해서 기록한다.

 

Question

 

모든 명함의 가로 길이와 세로 길이를 나타내는 2차원 배열 sizes가 매개변수로 주어집니다. 모든 명함을 수납할 수 있는 가장 작은 지갑을 만들 때, 지갑의 크기를 return 하도록 solution 함수를 완성해주세요.

 

 

Point

 

  • for * for 문 사용.

 

 

Code 1 : Short

for * for 이지만 루프 중첩이 아닌, 독립적으로 연속해서 시행되기 때문에 Time Complexity는 O(n)이다.

def solution(sizes):
    return max(max(x) for x in sizes) * max(min(x) for x in sizes)

 

Code 2 : Mine

 

Time Complexity = O(n)

def solution(sizes):
    row_max, col_max = 0,0
    for s in sizes:
        row_max = max(max(s[0],s[1]),row_max)
        col_max = max(min(s[0],s[1]),col_max)
        
    return row_max * col_max

 

now me

On my github

 

728x90