삐까냥의 파도타기
Q11057. 오르막 수 본문
이전에 풀었던 Q10844. 쉬운 계단 수 문제와 똑같은 문제입니다.
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Q11057 { static long[][] array; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine());
int num = Integer.valueOf(st.nextToken()); array = new long[10][num+1];
for (int i = 0; i < 10; i++) { array[i][1] = 1; }
for (int i = 2; i <= num; i++) { array[0][i] = array[0][i-1] % 10007; array[1][i] = array[0][i-1] + array[1][i-1] % 10007; array[2][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] % 10007; array[3][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] % 10007; array[4][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] % 10007; array[5][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] + array[5][i-1] % 10007; array[6][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] + array[5][i-1] + array[6][i-1] % 10007; array[7][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] + array[5][i-1] + array[6][i-1] + array[7][i-1] % 10007; array[8][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] + array[5][i-1] + array[6][i-1] + array[7][i-1] + array[8][i-1] % 10007; array[9][i] = array[0][i-1] + array[1][i-1] + array[2][i-1] + array[3][i-1] + array[4][i-1] + array[5][i-1] + array[6][i-1] + array[7][i-1] + array[8][i-1] + array[9][i-1] % 10007; }
long sum = 0; for (int i = 0; i < 10; i++) { sum = sum + array[i][num]; sum %= 10007; } System.out.println(sum); } } |
'코딩 > 백준 알고리즘' 카테고리의 다른 글
Q11048. 이동하기 (0) | 2019.02.12 |
---|---|
Q2167. 2차원 배열의 합 (0) | 2019.02.11 |
Q9461. 파도반 수열 (0) | 2019.02.10 |
Q9465. 스티커 (0) | 2019.02.10 |
Q2163. 초콜릿 자르기 (0) | 2019.02.10 |