[C++] BOJ : 24416 ์๊ณ ๋ฆฌ์ฆ ์์
- ํผ๋ณด๋์น ์ 1
ยท
์ฝ๋ฉ/c++
๐ก ๋ฐฑ์ค 24416๋ฒ: ํผ๋ณด๋์น ์ 1 | ์์ฌ์ฝ๋ ๊ธฐ๋ฐ C++ ๊ตฌํ + DP์ ์์๐งพ ๋ฌธ์ ์์ฝ๋ค์ ๋ ๊ฐ์ง ๋ฐฉ์์ผ๋ก ํผ๋ณด๋์น ์ n์ ๊ตฌํ๋ค๊ณ ํ ๋,์ฝ๋1: ์ฌ๊ท๋ก ๊ตฌํ ๋ fib(1) ๋๋ fib(2)๊ฐ ํธ์ถ๋๋ ํ์์ฝ๋2: ๋์ ๊ณํ๋ฒ์ผ๋ก f[i] = f[i - 1] + f[i - 2]๊ฐ ์คํ๋๋ ํ์์ด ๋์ ๊ฐ๊ฐ ์ถ๋ ฅํ๋ ๋ฌธ์ ์
๋๋ค.๐ง ์ฃผ์ด์ง ์์ฌ์ฝ๋๐ ์ฝ๋1: ์ฌ๊ท ํธ์ถ ๊ธฐ๋ฐfib(n) { if (n = 1 or n = 2) then return 1; # ์ฝ๋1 else return (fib(n - 1) + fib(n - 2));}→ fib(1) ๋๋ fib(2)์ ํธ์ถํ ๋๋ง๋ค 1ํ ๊ณ์ฐ์ผ๋ก ์นด์ดํธํฉ๋๋ค.๐ ์ฝ๋2: ๋์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฐfibonacci(n) { ..