녕의 학습 기록

백준_1328 고층 빌딩 (DP) 본문

Algorithm/Algorithm 문제

백준_1328 고층 빌딩 (DP)

kjyyjk 2024. 4. 21. 21:01

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class BJ_1328_고층빌딩 {

    static long MOD = 1000000007;

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");

        int n = Integer.parseInt(st.nextToken());
        int l = Integer.parseInt(st.nextToken());
        int r = Integer.parseInt(st.nextToken());

        long[][][] d = new long[n+1][l+1][r+1];

        d[1][1][1] = 1;

        int i, j, k;
        for (i=2; i<n+1; i++) {
            for (j=1; j<l+1; j++) {
                for (k=1; k<r+1; k++) {
                    d[i][j][k] = (d[i-1][j-1][k] + d[i-1][j][k-1] + (d[i-1][j][k] * (i-2))) % MOD;
                }
            }
        }

        System.out.println(new StringBuilder().append(d[n][l][r]));
    }

}
 

1328번: 고층 빌딩

상근이가 살고있는 동네에는 빌딩 N개가 한 줄로 세워져 있다. 모든 빌딩의 높이는 1보다 크거나 같고, N보다 작거나 같으며, 같은 높이를 가지는 빌딩은 없다. 상근이는 학교 가는 길에 가장 왼

www.acmicpc.net

 

'Algorithm > Algorithm 문제' 카테고리의 다른 글

백준_11049 행렬 곱셈 순서 (DP)  (0) 2024.04.28
백준_2342 Dance Dance Revolution (DP)  (0) 2024.04.23
백준_1915 가장 큰 정사각형 (DP)  (0) 2024.04.21
백준_9252 LCS 2 (DP)  (1) 2024.04.21
백준_13398 연속합 2 (DP)  (0) 2024.04.18