1. ๋ฌธ์ ์ค๋ช
๋ฏผ์๋ ๋ค์ํ ์งํ๋ฅผ ์์งํ๋ ์ทจ๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์งํ๋ง๋ค ํฌ๊ธฐ๊ฐ ๋ฌ๋ผ ์ง๊ฐ์ ๋ฃ์ผ๋ ค๋ฉด ์ฌ๋ฌ ๋ฒ ์ ์ด์ ๋ฃ์ด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ง๊ฐ์ ํฌ๊ธฐ๊ฐ 30 * 15์ด๊ณ ์งํ์ ํฌ๊ธฐ๊ฐ 26 * 17์ด๋ผ๋ฉด ํ๋ฒ ๋ฐ์ผ๋ก ์ ์ด 13 * 17 ํฌ๊ธฐ๋ก ๋ง๋ ๋ค 90๋ ๋๋ ค์ ์ง๊ฐ์ ๋ฃ์ ์ ์์ต๋๋ค. ์งํ๋ฅผ ์ ์ ๋๋ ๋ค์๊ณผ ๊ฐ์ ๊ท์น์ ์งํต๋๋ค.
- ์งํ๋ฅผ ์ ์ ๋๋ ํญ์ ๊ธธ์ด๊ฐ ๊ธด ์ชฝ์ ๋ฐ์ผ๋ก ์ ์ต๋๋ค.
- ์ ๊ธฐ ์ ๊ธธ์ด๊ฐ ํ์์๋ค๋ฉด ์ ์ ํ ์์์ ์ดํ๋ ๋ฒ๋ฆฝ๋๋ค.
- ์ ํ ์งํ๋ฅผ ๊ทธ๋๋ก ๋๋ 90๋ ๋๋ ค์ ์ง๊ฐ์ ๋ฃ์ ์ ์๋ค๋ฉด ๊ทธ๋ง ์ ์ต๋๋ค.
์ง๊ฐ์ ๊ฐ๋ก, ์ธ๋ก ํฌ๊ธฐ๋ฅผ ๋ด์ ์ ์ ๋ฆฌ์คํธ wallet๊ณผ ์งํ์ ๊ฐ๋ก, ์ธ๋ก ํฌ๊ธฐ๋ฅผ ๋ด์ ์ ์ ๋ฆฌ์คํธ bill์ด ์ฃผ์ด์ง ๋, ์ง๊ฐ์ ๋ฃ๊ธฐ ์ํด์ ์งํ๋ฅผ ์ต์ ๋ช ๋ฒ ์ ์ด์ผ ํ๋์ง returnํ๋๋ก solutionํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์งํ๋ฅผ ์ง๊ฐ์ ๋ฃ๊ธฐ ์ํด ์ ์ด์ผ ํ๋ ์ต์ ํ์๋ฅผ ๊ตฌํ๋ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. ์งํ๋ฅผ ์ ์ ํ์๋ฅผ ์ ์ฅํ ์ ์ ๋ณ์ answer๋ฅผ ๋ง๋ค๊ณ 0์ ์ ์ฅํฉ๋๋ค.
2. ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํด bill์ ์์ ๊ฐ์ด wallet์ ์์ ๊ฐ ๋ณด๋ค ํฌ๊ฑฐ๋ bill์ ํฐ ๊ฐ์ด wallet์ ํฐ ๊ฐ ๋ณด๋ค ํฐ ๋์ ์๋ ๊ณผ์ ์ ๋ฐ๋ณตํฉ๋๋ค.
2-1. bill[0]์ด bill[1]๋ณด๋ค ํฌ๋ค๋ฉด
bill[0]์ 2๋ก ๋๋๊ณ ๋๋จธ์ง๋ ๋ฒ๋ฆฝ๋๋ค.
2-2. ๊ทธ๋ ์ง ์๋ค๋ฉด
bill[1]์ 2๋ก ๋๋๊ณ ๋๋จธ์ง๋ ๋ฒ๋ฆฝ๋๋ค.
2-3. answer์ 1 ์ฆ๊ฐ์ํต๋๋ค.
3. answer์ returnํฉ๋๋ค.
- ์์ ์์ฌ์ฝ๋์ ์๋๋ฐฉ์์ด ๋ค๋ฅธ ์ฝ๋๋ฅผ ์์ฑํด๋ ์๊ด์์ต๋๋ค.
์ ํ์ฌํญ
- wallet์ ๊ธธ์ด = bill์ ๊ธธ์ด = 2
- 10 ≤ wallet[0], wallet[1] ≤ 100
- 10 ≤ bill[0], bill[1] ≤ 2,000
2. ์ถ๋ ฅ ์์

3. ๋ฌธ์ ๋ต์
def solution(wallet, bill):
answer = 0
while(min(wallet) < min(bill) or max(wallet) < max(bill)):
if bill[0] < bill[1]:
bill[1] //= 2
else:
bill[0] //= 2
answer += 1
return answer