Tags
- stack
- ๊ทธ๋ํ ํ์
- ๊น์ด ์ฐ์ ํ์
- BOJ
- DP
- ์ ๋ ฌ
- ์๋ฎฌ๋ ์ด์
- ๊ต์ฌ
- Study
- ๊ตฌํ
- Java
- ๋ฌธ์์ด
- ๋ฐฑํธ๋ํน
- Python
- Brute Force Algorithm
- LV2
- ๋๋น ์ฐ์ ํ์
- ์ํ
- Dynamic Programming
- BFS
- ๊ทธ๋ํ ์ด๋ก
- ์๋ฃ๊ตฌ์กฐ
- greedy
- queue
- ์ ์๋ก
- SpringBoot
- sort
- dfs
- PGM
- CodingTest
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_9625 : BABBA ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- A์์ ์์ํด์ ๋ฒํผ์ ๋๋ฅผ ๋ ๋ง๋ค ๋ค์๊ณผ ๊ฐ์ ๊ท์น์ด ๋ฐ๋ณต ๋๋ค.
- ๋ชจ๋ A๋ B๋ก ๋ฐ๋๋ค.
- ๋ชจ๋ B๋ BA๋ก ๋ฐ๋๋ค.
- k๋ฒ ๋๋ ์๋ A์ B์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค.
- AB์ ๊ฐ์๊ฐ ํผ๋ณด๋์น ์์ด ๋ฐฉ์์ผ๋ก ์ฆ๊ฐํ๋ค.
- k = 0, 1 0
- k = 1, 1 1
- k = 2, 1 2
- k = 3, 2 3
- dp ๋ฆฌ์คํธ๋ก ๋ณด๋ฉด : 1 0 1 1 2 3 ..
๐ธ ์ฝ๋ ๐ธ
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int k = sc.nextInt();
int[] dp = new int[k+2];
dp[0] = 1;
dp[1] = 0;
for (int i = 2; i <= k+1; i++) {
dp[i] = dp[i-2] + dp[i-1];
}
System.out.println(dp[k] + " " + dp[k+1]);
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- k์ ์๋งํผ dp ๋ฆฌ์คํธ์ ํฌ๊ธฐ๋ฅผ ํ ๋นํ๋ค.
- a b์ ์ํ๋ฅผ dp ๋ฆฌ์คํธ์ ์ ์ฅํ๋ฉฐ ๊ณ์ฐํ๋ค.
๐ธ end ๐ธ
- ํผ๋ณด๋์น ์์ด๊ณผ ๊ฐ๋ค๊ณ ์๊ฐํ๋ ์ฝ๊ฒ ํ๋ ธ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_2193 : ์ด์น์ (0) | 2022.11.29 |
---|---|
BOJ_13699 : ์ ํ์ (0) | 2022.11.29 |
BOJ_3182 : ํ๋์ด๋ ๊ณต๋ถ๊ฐ ํ๊ธฐ ์ซ์ด! (0) | 2022.11.22 |
BOJ_1388 : ๋ฐ๋ฅ ์ฅ์ (0) | 2022.11.21 |
BOJ_16173 : ์ ํ์ ์ฉฐ๋ฆฌ (Small) (0) | 2022.11.21 |