โ๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/86491?language=python3
์ฑ๋ฅ ์์ฝ
๋ฉ๋ชจ๋ฆฌ: 10.3 MB, ์๊ฐ: 3.29 ms
๋ฌธ์ ์ค๋ช
๋ช ํจ ์ง๊ฐ์ ๋ง๋๋ ํ์ฌ์์ ์ง๊ฐ์ ํฌ๊ธฐ๋ฅผ ์ ํ๋ ค๊ณ ํฉ๋๋ค. ๋ค์ํ ๋ชจ์๊ณผ ํฌ๊ธฐ์ ๋ช ํจ๋ค์ ๋ชจ๋ ์๋ฉํ ์ ์์ผ๋ฉด์, ์์์ ๋ค๊ณ ๋ค๋๊ธฐ ํธํ ์ง๊ฐ์ ๋ง๋ค์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์๊ฑด์ ๋ง์กฑํ๋ ์ง๊ฐ์ ๋ง๋ค๊ธฐ ์ํด ๋์์ธํ์ ๋ชจ๋ ๋ช ํจ์ ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๋ฅผ ์กฐ์ฌํ์ต๋๋ค.
์๋ ํ๋ 4๊ฐ์ง ๋ช ํจ์ ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๋ฅผ ๋ํ๋ ๋๋ค.
๋ช ํจ ๋ฒํธ | ๊ฐ๋ก ๊ธธ์ด | ์ธ๋ก ๊ธธ์ด |
---|---|---|
1 | 60 | 50 |
2 | 30 | 70 |
3 | 60 | 30 |
4 | 80 | 40 |
๊ฐ์ฅ ๊ธด ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๊ฐ ๊ฐ๊ฐ 80, 70์ด๊ธฐ ๋๋ฌธ์ 80(๊ฐ๋ก) x 70(์ธ๋ก) ํฌ๊ธฐ์ ์ง๊ฐ์ ๋ง๋ค๋ฉด ๋ชจ๋ ๋ช ํจ๋ค์ ์๋ฉํ ์ ์์ต๋๋ค. ํ์ง๋ง 2๋ฒ ๋ช ํจ์ ๊ฐ๋ก๋ก ๋ํ ์๋ฉํ๋ค๋ฉด 80(๊ฐ๋ก) x 50(์ธ๋ก) ํฌ๊ธฐ์ ์ง๊ฐ์ผ๋ก ๋ชจ๋ ๋ช ํจ๋ค์ ์๋ฉํ ์ ์์ต๋๋ค. ์ด๋์ ์ง๊ฐ ํฌ๊ธฐ๋ 4000(=80 x 50)์ ๋๋ค.
๋ชจ๋ ๋ช ํจ์ ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๋ฅผ ๋ํ๋ด๋ 2์ฐจ์ ๋ฐฐ์ด sizes๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ๋ชจ๋ ๋ช ํจ์ ์๋ฉํ ์ ์๋ ๊ฐ์ฅ ์์ ์ง๊ฐ์ ๋ง๋ค ๋, ์ง๊ฐ์ ํฌ๊ธฐ๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
- sizes์ ๊ธธ์ด๋ 1 ์ด์ 10,000 ์ดํ์
๋๋ค.
- sizes์ ์์๋ [w, h] ํ์์ ๋๋ค.
- w๋ ๋ช ํจ์ ๊ฐ๋ก ๊ธธ์ด๋ฅผ ๋ํ๋ ๋๋ค.
- h๋ ๋ช ํจ์ ์ธ๋ก ๊ธธ์ด๋ฅผ ๋ํ๋ ๋๋ค.
- w์ h๋ 1 ์ด์ 1,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
โ๐ปํ์ด
๐ป์ฝ๋
๋ด ํ์ด
def solution(sizes):
answer = 0
for size in sizes:
size.sort(reverse=True)
sizes.sort(key=lambda x: -x[0])
w = sizes[0][0]
for _, h in sizes:
answer = max(answer, w*h)
return answer
๋ค๋ฅธ ์ฌ๋ ํ์ด
def solution(sizes):
answer = max(max(s) for s in sizes) * max(min(s) for s in sizes)
return answer
๐ํ๊ธฐ
ํ๋ก๊ทธ๋๋จธ์ค ๊ณ์ ์ ์๋ก ์์ฑํ๊ณ ๋ค์ ํ์๋๋ฐ ์ ๋ณด๋ค ์๊ฐ๊ณผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ค์ฌ์ ์ด ๋ถ๋ถ์ ๋ฟ๋ฏโบ๏ธ
๋ค๋ฅธ ์ฌ๋ ํ์ด๋ณด๊ณ ๋๋ ์์ฒญ ๊ธธ๊ฒ ์ผ๋๋ฐ ์ ๋ ๊ฒ ์งง๊ณ ๊ฐ๋จํ๋ฉด์ ์๊ฐ๋ ๋ด๊ฐ ์์ฑํ ๊ฒ๋ณด๋ค ๋นจ๋ผ์ ๋งค์ฐ ๋๋
'Coding Test > Algorithms' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[SWEA] 2819. ๊ฒฉ์ํ์ ์ซ์ ์ด์ด๋ถ์ด๊ธฐ/Python - D4 (0) | 2025.07.22 |
---|---|
[SWEA] 1242. ์ํธ์ฝ๋ ์ค์บ/Python - D5 (1) | 2025.07.21 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฒด์ก๋ณต/Python - Lv.1 (1) | 2025.07.15 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์/Python - Lv.2 (0) | 2025.07.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ํ๋ฒํธ ๋ชฉ๋ก/Python - Lv.2 (0) | 2025.07.10 |