본문 바로가기

OJ

[BOJ] 12785 토쟁이의 등굣길 (JAVA)

https://www.acmicpc.net/problem/12785

 

12785번: 토쟁이의 등굣길

인하대학교에 다니는 토쟁이는 y축과 평행한 w개의 도로, x축과 평행한 h개의 도로가 있는 도시에 살고 있다. 토쟁이의 집은 이 도시의 맨 왼쪽 아래에 위치하며 좌표로는 (1, 1)로 표시할 수 있다.

www.acmicpc.net

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

public class Main {
	
    public static void main(String[] args) throws Exception {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");
        int W = Integer.parseInt(st.nextToken()) - 1;
        int H = Integer.parseInt(st.nextToken()) - 1;
        st = new StringTokenizer(br.readLine(), " ");
        int X = Integer.parseInt(st.nextToken()) - 1;
        int Y = Integer.parseInt(st.nextToken()) - 1;
        long[][] dp = new long[200][200];
        for (int i = 0; i < 200; i++) {
            dp[i][0] = dp[0][i] = 1;
        }

        for (int i = 1; i < 200; i++) {
            for (int j = 1; j < 200; j++) {
                dp[i][j] = (dp[i - 1][j] + dp[i][j - 1]) % 1_000_007;
            }
        }

        System.out.print((dp[X][Y] * dp[W - X][H - Y]) % 1_000_007);

    }
	
}