๋ฌธ์ ๋งํฌ
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AZD8K_UayDoDFAVs
SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com
๋ฌธ์
C, C++, Python, Java ๋ฑ์ ์ธ์ด์๋ += ์ฐ์ฐ์๊ฐ ์๋ค. ์ ์ํ ๋ณ์ x, y๊ฐ ์์ ๋ “x += y”๋ฅผ ํ๋ฉด x์ ์ ์ฅ๋ ๊ฐ์ด (๊ธฐ์กด์ x์ ์ ์ฅ๋์ด ์๋ ๊ฐ) + (๊ธฐ์กด์ y์ ์ ์ฅ๋์ด ์๋ ๊ฐ)์ผ๋ก ๋ฐ๋๋ค.
ํ์ฌ x์ ์ ์ฅ๋ ๊ฐ์ A, y์ ์ ์ฅ๋ ๊ฐ์ B์ด๋ค. ๋น์ ์ “x += y” ๋๋ “y += x” ์ฐ์ฐ์ ์ํ๋ ์์๋๋ก ์ํ๋ ๋งํผ ์ํํ์ฌ, x๋ y ๋ ์ค ํ๋ ์ด์์ ์ ์ฅ๋ ๊ฐ์ด N ์ด๊ณผ๊ฐ ๋๊ฒ ํ๋ ค๊ณ ํ๋ค. ์ฐ์ฐ์ ํฉ์ณ์ ์ต์ ๋ช ๋ฒ ์ํํด์ผ ํ๋์ง ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ.
์ ๋ ฅ
์ฒซ ๋ฒ์งธ ์ค์ ํ
์คํธ ์ผ์ด์ค์ ์ T๊ฐ ์ฃผ์ด์ง๋ค.
๊ฐ ํ
์คํธ ์ผ์ด์ค๋ ํ ๊ฐ์ ์ค๋ก ์ด๋ฃจ์ด์ง๋ค. ๊ฐ ์ค์๋ ์ธ ๊ฐ์ ์ ์ ์ด ๊ณต๋ฐฑ ํ๋์ฉ์ ์ฌ์ด๋ก ๋๊ณ ์ฃผ์ด์ง๋ค.
ํ
์คํธ ์ผ์ด์ค์ ๊ฐ์๋ 600,000๊ฐ ์ด์์ผ๋ก ์๋นํ ๋ง์์ ์ ์ํ๋ผ.
์ถ๋ ฅ
๊ฐ ํ ์คํธ ์ผ์ด์ค๋ง๋ค, ํ ์ค์ ํ๋์ฉ x๋ y ๋ ์ค ํ๋ ์ด์์ ์ ์ฅ๋ ๊ฐ์ด N ์ด๊ณผ๊ฐ ๋๊ฒ ํ๊ธฐ ์ํด “x += y”, “y += x” ์ฐ์ฐ์ ์ต์ ๋ช ๋ฒ ์ํํด์ผ ํ๋์ง ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ
5
1 2 2
1 2 3
1 2 4
1 2 5
10 7 1293
์์ ์ถ๋ ฅ
1
2
2
3
11
ํด๊ฒฐ ๋ฐฉ๋ฒ
์ฒ์ ๋ฌธ์ ๋ฅผ ๋ดค์ ๋ ์ฐ์ฐ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ ๋๊ฐ์ง ์๊ฐ๋ฌ๋ค.
- ์์์ชฝ์ ํฐ ์๋ฅผ ๋ํด์ฃผ๊ธฐ
- ํฐ์ชฝ์ ์์ ์๋ฅผ ๋ํด์ฃผ๊ธฐ
๋ฌผ๋ก ์๊ฐ์ ํด๋ณด๋ฉด 1๋ฒ์ด ๋ ์ค ํ๋๋ผ๋ N์ ์ด๊ณผํ๊ฒ ๋ง๋ค๊ธฐ์ ํฉ๋นํ ๋ฐฉ๋ฒ์์ ์ ์ ์๋ค.
T = int(input())
# ์ฌ๋ฌ๊ฐ์ ํ
์คํธ ์ผ์ด์ค๊ฐ ์ฃผ์ด์ง๋ฏ๋ก, ๊ฐ๊ฐ์ ์ฒ๋ฆฌํฉ๋๋ค.
for test_case in range(1, T + 1):
a,b,n = map(int,input().split())
cnt = 0
while ( a <= n or b <= n):
if a > b:
b += a
else:
a += b
cnt += 1
print(cnt-1)

'๐์ฝ๋ฉํ ์คํธ > SWEA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SWEA] <D2> 1946 - ๊ฐ๋จํ ์์ถ ํ๊ธฐ (0) | 2024.11.02 |
|---|---|
| [SWEA] <D2> 1945 - ๊ฐ๋จํ ์์ธ์๋ถํด (0) | 2024.11.02 |
| [SWEA] <D2> 1940 - ๊ฐ๋! RC์นด! (0) | 2024.11.02 |
| [SWEA] <D2> 1926 - ๊ฐ๋จํ 369 ๊ฒ์ (0) | 2024.11.02 |
| [SWEA] <D2> 1288 - ์๋ก์ด ๋ถ๋ฉด์ฆ ์น๋ฃ๋ฒ (0) | 2024.11.02 |