[๋ฐฑ์ค(BOJ)] 10844๋ฒ: ์ฌ์ด ๊ณ๋จ ์ (Dynamic Programming, C++)
#include <stdio.h>
int main(){
int N;
scanf("%d", &N);
int DP[N+1][10] = {};
for(int i=0; i<10; i++){
DP[1][i] = 1; // 1_ ์ผ ๋ 0 ~ 9 ์ ์ฅ
}
for(int i=2; i <= N; i++){
for(int j=0; j<10; j++){ // 0 ~ 9
if(j == 0) DP[i][0] = DP[i-1][1]; // ๋ท์๋ฆฌ๊ฐ 0์ผ ๋ ์์ 1
else if(j == 9) DP[i][9] = DP[i-1][8]; // 9๊ฐ ์ฌ ๋ ์ด์ ์ 8 ๋๋ ์ดํ๋ 8
else DP[i][j] = (DP[i-1][j-1] + DP[i-1][j+1]) % 1000000000; // 1 ~ 8 ์ ๊ฒฝ์ฐ, +1 ์ ๋๋ -1 ์
}
}
int sum=0;
for(int i=1; i<10; i++){ // N์๋ฆฌ์ผ ๋์ ๋ชจ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๋ํด์ค
sum = (sum + DP[N][i]) % 1000000000;
}
printf("%d", sum % 1000000000);
}
[๋ฐฑ์ค(BOJ)] 2193๋ฒ: ์ด์น์ (Dynamic Programming, C++) (0) | 2021.02.12 |
---|---|
[๋ฐฑ์ค(BOJ)] 11057๋ฒ: ์ค๋ฅด๋ง ์ (Dynamic Programming, C++) (0) | 2021.02.12 |
[๋ฐฑ์ค(BOJ)] 2522๋ฒ: ๋ณ ์ฐ๊ธฐ - 12 (์ ์ถ๋ ฅ, C++) (0) | 2021.02.11 |
[๋ฐฑ์ค(BOJ)] 2445๋ฒ: ๋ณ ์ฐ๊ธฐ - 8 (์ ์ถ๋ ฅ, C++) (0) | 2021.02.11 |
[๋ฐฑ์ค(BOJ)] 2442๋ฒ: ๋ณ ์ฐ๊ธฐ - 5 (์ ์ถ๋ ฅ, C++) (0) | 2021.02.11 |