01-09 04:37
Recent Posts
Recent Comments
Tags
- Naver Cloud
- SQL
- ict๊ณต๋ชจ์
- ์จ์ผ๋ํ
- ์คํฝ์ค๋น
- Java
- ์คํฝ๋ ํ
- ํ์ด์๊ณต๋ชจ์
- appetizer
- ICT๋ฉํ ๋ง
- ์๋ฐ
- ํ์ด์ฌ
- ICT
- JOBํ๊ณ
- ์กํ๊ณ
- ํ์ด์
- DATABASE
- python
- Spring
- mysql
- TSQL
- RaspberryPi
- ์ด๋ธ์
- ํ๋ก๋ณด๋ ธ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- DB
- linux
- API๋ง์ผํ๋ ์ด์ค
- API MarketPlace ๊ธ๋ก๋ฒ ์ํฌํฐ์ฆ
- ์๋์ด๋ ธ
- Today
- Total
miinsun
[BAEKJOON] ๋ฐฑ์ค ๋์ ๊ณํ๋ฒ1 1003 :: ํผ๋ณด๋์น ํจ์ ๋ณธ๋ฌธ
Algorithm/Baekjoon
[BAEKJOON] ๋ฐฑ์ค ๋์ ๊ณํ๋ฒ1 1003 :: ํผ๋ณด๋์น ํจ์
miinsun 2022. 4. 13. 01:18
๐ฌ ๋ฌธ์ ์ค๋ช
๋ค์ ์์ค๋ N๋ฒ์งธ ํผ๋ณด๋์น ์๋ฅผ ๊ตฌํ๋ C++ ํจ์์ด๋ค.
fibonacci(3)์ ํธ์ถํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ผ์ด ์ผ์ด๋๋ค.
* fibonacci(3)์ fibonacci(2)์ fibonacci(1) (์ฒซ ๋ฒ์งธ ํธ์ถ)์ ํธ์ถํ๋ค.
* fibonacci(2)๋ fibonacci(1) (๋ ๋ฒ์งธ ํธ์ถ)๊ณผ fibonacci(0)์ ํธ์ถํ๋ค.
* ๋ ๋ฒ์งธ ํธ์ถํ fibonacci(1)์ 1์ ์ถ๋ ฅํ๊ณ 1์ ๋ฆฌํดํ๋ค.
* fibonacci(0)์ 0์ ์ถ๋ ฅํ๊ณ , 0์ ๋ฆฌํดํ๋ค.
* fibonacci(2)๋ fibonacci(1)๊ณผ fibonacci(0)์ ๊ฒฐ๊ณผ๋ฅผ ์ป๊ณ , 1์ ๋ฆฌํดํ๋ค.
* ์ฒซ ๋ฒ์งธ ํธ์ถํ fibonacci(1)์ 1์ ์ถ๋ ฅํ๊ณ , 1์ ๋ฆฌํดํ๋ค.
* fibonacci(3)์ fibonacci(2)์ fibonacci(1)์ ๊ฒฐ๊ณผ๋ฅผ ์ป๊ณ , 2๋ฅผ ๋ฆฌํดํ๋ค.
1์ 2๋ฒ ์ถ๋ ฅ๋๊ณ , 0์ 1๋ฒ ์ถ๋ ฅ๋๋ค. N์ด ์ฃผ์ด์ก์ ๋, fibonacci(N)์ ํธ์ถํ์ ๋,
0๊ณผ 1์ด ๊ฐ๊ฐ ๋ช ๋ฒ ์ถ๋ ฅ๋๋์ง ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
๐จ ์ ์ถ๋ ฅ ์
์ ๋ ฅ
- ์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T๊ฐ ์ฃผ์ด์ง๋ค.
- ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , N์ด ์ฃผ์ด์ง๋ค. N์ 40๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์ ๋๋ 0์ด๋ค.
์ถ๋ ฅ
-
๊ฐ ํ ์คํธ ์ผ์ด์ค๋ง๋ค 0์ด ์ถ๋ ฅ๋๋ ํ์์ 1์ด ์ถ๋ ฅ๋๋ ํ์๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1)
3
0
1
3
์์ ์ถ๋ ฅ 1)
1 0
0 1
1 2
์์ ์ ๋ ฅ 2)
2
6
22
์์ ์ถ๋ ฅ 2)
5 8
10946 17711
โ
โ
๐ป Main.java
- ์ด์ฐจ์ ๋ฐฐ์ด dy์ [n ํธ์ถ ์][0, 1์ ์ ๋ณด]๋ฅผ ์ ์ฅํด์ค๋ค.
- ์ ํ์์ ๋ค์๊ณผ ๊ฐ๋ค
- dy[n][0] += (dy[n-1][0] + dy[n-2][0]);
- dy[n][1] += (dy[n-1][1] + dy[n-2][0]);
/* ๋ฐฑ์ค ๋์ ๊ณํ๋ฒ 1 - 1003 :: ํผ๋ณด๋์น ํจ์ */
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int i = 0; i < t; i++) {
int n = sc.nextInt();
// dy[n][0, 1], ํผ๋ณด๋์น n์ ํธ์ถํ์๋, 0๊ณผ 1์ ์
int[][] dy = new int[n + 1][2];
if(n >= 0)
dy[0][0] = 1;
if(n >= 1)
dy[1][1] = 1;
for(int j = 2; j <= n; j++) {
// 0 ํธ์ถ ๊ณ์ฐ
dy[j][0] += (dy[j-1][0] + dy[j-2][0]);
// 1 ํธ์ถ ๊ณ์ฐ
dy[j][1] += (dy[j-1][1] + dy[j-2][1]);
}
System.out.println(dy[n][0] + " " + dy[n][1]);
}
sc.close();
}
}
'Algorithm > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BAEKJOON] ๋ฐฑ์ค ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ 13305 :: ์ฃผ์ ์ (0) | 2022.04.15 |
---|---|
[BAEKJOON] ๋ฐฑ์ค ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ 1541 :: ์์ด๋ฒ๋ฆฐ ๊ดํธ (0) | 2022.04.14 |
[BAEKJOON] ๋ฐฑ์ค ๋์ ๊ณํ๋ฒ1 10844 :: ์ฌ์ด ๊ณ๋จ ์ (0) | 2022.04.13 |
[BAEKJOON] ๋ฐฑ์ค ๋ธ๋ฃจํธ ํฌ์ค1436 :: ์ํ๊ฐ๋ ์ (0) | 2022.04.11 |
[BAEKJOON] ๋ฐฑ์ค ๋ธ๋ฃจํธ ํฌ์ค 7568 :: ๋ฉ์น (0) | 2022.04.11 |
Comments