[백준, BOJ 11057] 오르막 수 (java)
Problem Solving/BOJ

[백준, BOJ 11057] 오르막 수 (java)

728x90

출처-https://www.acmicpc.net/problem/11057

 

11057번: 오르막 수

오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수�

www.acmicpc.net


728x90

 

내가 푼 방식

: dp[i][j]는 dp[i-1][j]부터 dp[i-1][10]까지 올 수 있다.

 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int dp[][]=new int[n+1][10];
		
		for (int i=0;i<10;i++)
			dp[1][i]=1;
		
		for (int i=2;i<=n;i++)
			for (int j=0;j<10;j++)
				for (int k=j;k<10;k++)
					dp[i][j]+=(dp[i-1][k])%10007;
		
		int cases=0;
		for (int i=0;i<10;i++)
			cases+=dp[n][i];
		cases%=10007;
		System.out.println(cases);
	}

}
728x90