https://school.programmers.co.kr/learn/courses/30/lessons/86491
๊ต์ฅํ ๊ฐ๋จํ๊ฒ ํด๊ฒฐ ๊ฐ๋ฅํ๋ ๋ฌธ์ ์๋๋ฐ ๋ ๋ญํ๊ฑฐ์ง..? omg
๊ฐ๋ก๊ฐ ํญ์ ๊ธธ๊ณ ์ธ๋ก๊ฐ ํญ์ ์งง์ ์ ์๋๋ก ์ธํ ํ๊ณ ๋ช ํจ ํ๋์ฉ ์ ๋ ฅ ๋ฐ์ผ๋ฉด ๋จ
def solution(sizes):
max_w, max_h = -1, -1
for size in sizes:
w, h = max(size[0],size[1]), min(size[0],size[1])
max_w = max(max_w,w)
max_h = max(max_h,h)
return max_w*max_h
์ด์ํ ํ์ด ๊ณผ์ ..
def return_min(final_w, final_h, w, h):
# if final_w < w and final_h < h ์ธ ๊ฒฝ์ฐ --> ๊ฐ๋ก ์ธ๋ก ๊ทธ๋ฅ ํ์ฅ
# (20,30) / (40,25)
if final_w < w and final_h < h:
return (w, h)
# elif final_w < w ์ธ ๊ฒฝ์ฐ
elif final_w < w:
# elif final_h < h ์ธ ๊ฒฝ์ฐ
def solution(sizes):
# ๋ช
ํจ ๋ฒํธ 1์ ๊ธฐ์ค์ผ๋ก ๋ค ๋ค์ด๊ฐ ์ ์๋์ง ํ์ธ
# ์๋๋ ์ ๋ค์ ๋ฐ๋ก ์ ์ฅํด๋๊ณ ํ๋์ฉ ์ ๊ฒํด๋๊ฐ๋ฉด์ ํ์ฅํ๊ธฐ
# ex.
# STEP1
# (60, 50)์ผ ๋
# ๋ช
ํจ๋ฒํธ 2์ (30,70) --> ์คํจ --> ์ ์ฅ
# ๋ช
ํจ๋ฒํธ 3์ (60,30) --> ์ฑ๊ณต
# ๋ช
ํจ๋ฒํธ 4์ (80,40) --> ์คํจ --> ์ ์ฅ
# STEP2 ๋ํ๊ธฐ
# (60,50)๊ณผ (30,70) ๋น๊ต --> (70,50)
# (70,50)๊ณผ (80,40) ๋น๊ต --> (80,50)
failure_cases = []
final_w, final_h = sizes[0][0], sizes[0][1]
# STEP1
for i in range(1,len(sizes)):
curr_w, curr_h = sizes[i][0], sizes[i][1]
if not ((curr_w <= final_w and curr_h <= final_h) or (curr_w <= final_h and curr_h <= final_w)): # ๊ทธ๋๋ก or ๋ํ์ ๋ค์ด๊ฐ ์ ์์ ๋
failure_cases.append(sizes[i])
# STEP2
for i in range(len(failure_cases)):
print(final_w, final_h)
return final_w*final_h'๐ Study > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ํ๋ก๊ทธ๋๋จธ์ค Lv2 | dfs/bfs | ๊ฒ์ ๋งต ์ต๋จ๊ฑฐ๋ฆฌ (0) | 2026.04.01 |
|---|---|
| ํ๋ก๊ทธ๋๋จธ์ค Lv1 | ์์ ํ์ | ๋ชจ์๊ณ ์ฌ (0) | 2026.03.31 |
| [Silver IV] 2578 ๋น๊ณ (0) | 2026.03.31 |
| ํ๋ก๊ทธ๋๋จธ์ค Lv2 | ์์ ํ์ | ๋ชจ์์ฌ์ (0) | 2025.10.11 |
| ํ๋ก๊ทธ๋๋จธ์ค Lv2 | ์์ ํ์ | ์ ๋ ฅ๋ง์ ๋๋ก ๋๋๊ธฐ (0) | 2025.10.11 |