728x90
[๋ฌธ์ ๋งํฌ] ๐
SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com
Calkin-Wilf Tree
Calkin-Wilf Tree๋ ๋ชจ๋ ์์ ์ ๋ฆฌ์๋ฅผ ์ค๋ณต ์์ด ํฌํจํ๋ ์ด์ง ํธ๋ฆฌ์ด๋ค. ํธ๋ฆฌ์ ๊ฐ ๋ ธ๋๋ ๋ถ๋ชจ ๋ ธ๋์ ๋ถ์ ab\frac{a}{b}๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ ์์์ aa+b\frac{a}{a+b}, ์ค๋ฅธ์ชฝ ์์์ a+bb\frac{a+b}{b} ํํ๋ก ์์ฑ๋๋ค. ์ด๋ฅผ ํตํด ์ ๋ฆฌ์๋ฅผ ์์๋๋ก ํ์ํ ์ ์๋ค.
ํ์ด
์ ๋ ฅ์ด LRL ์ด๋ผ๊ณ ํ์. ๊ทธ๋ผ ๋ค์ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค.

๋ฐ๋ผ์ ๋ฌธ์๊ฐ L์ด๋ฉด Right ๊ฐ์ L ๊ฐ์ ๋ํด ๋์ ํ๊ณ , R์ด๋ฉด Left ๊ฐ์ R ๊ฐ์ ๋ํด ๋์ ์ํจ๋ค.
๋ง์ง๋ง์ผ๋ก Left๊ฐ๊ณผ Right๊ฐ์ ์ถ๋ ฅํ๋ค.
Solution
test_case = int(input())
for tc in range(1, test_case + 1):
node = input().strip()
l = 1
r = 1
for i in node:
if i == 'L':
r += l
else:
l += r
print("#%d %d %d" %(tc, l, r))
728x90
'๐งฉ Algorithm > SWEA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SWEA] 1289. ์์ฌ์ ๋ฉ๋ชจ๋ฆฌ ๋ณต๊ตฌํ๊ธฐ (Python/D3) (0) | 2024.10.20 |
|---|---|
| [SWEA] 10570. ์ ๊ณฑ ํฐ๋ฆฐ๋๋กฌ ์ (Python/D3) (0) | 2024.10.20 |
| [SWEA] 4406. ๋ชจ์์ด ๋ณด์ด์ง ์๋ ์ฌ๋ (Python/D3) (0) | 2024.10.20 |
| [SWEA] 12221. ๊ตฌ๊ตฌ๋จ2 (Python/D3) (0) | 2024.10.20 |
| [SWEA] 10505. ์๋๋ถ๊ท ํ (Python/D3) (0) | 2024.10.20 |