문제를 잘 읽어보면 주어진 가로길이의 최댓값, 세로길이의 최댓값을 선택하는 단순한 문제가 아님을 알 수 있다. 즉, 각 명함의 크기가 가로, 세로의 전환도 고려해야한다는 것. 가장 심플한 해결방법은 주어진 sizes를 반복을 하되 큰값을 가로와 세로 중 어디로 할 것인지 임의로 정한뒤 순차적으로 비교하여 최대의 수치를 저장해주면 된다. 아래 코드를 보면 이해가 될 것이다.
def solution(sizes):
w = 0
h = 0
for element in sizes:
if element[0] > element[1]:
element[0], element[1] = element[1], element[0]
if element[0]>w:
w = element[0]
if element[1]>h:
h = element[1]
return w*h
'알고리즘 & 코딩테스트 > 코딩테스트' 카테고리의 다른 글
Programmers Lv.1 "[1차] 비밀지도" (0) | 2023.06.08 |
---|---|
Programmers Lv.1 "크기가 작은 부분문자열" (0) | 2023.06.07 |
Programmers Lv.1 "시저 암호" (0) | 2023.06.01 |
Programmers Lv. 1 "삼총사" (0) | 2023.05.31 |
Programmers Lv.1 "예산" (0) | 2023.05.31 |