Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

전공공부

[BOJ_1890] 점프 본문

Study/Problem Solving

[BOJ_1890] 점프

monitor 2024. 2. 21. 00:05

설명


아래 또는 오른쪽로만 움직일 수 있는 경우로 고정 되어 있습니다. 따라서, 점화식을 2차원 배열로 만들기 쉬운데요.

 

dp를 해당 케이스로 가는 경우의 수로 고려하고 문제를 풀이를 시도하면 쉽게 세울 수 있는 DP 문제이나 처음에 점화식을 생각해내는 것이 역시 어렵습니다.

 

코드


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

public class BOJ_1890 {
    public static void main(String[] args) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer tk = new StringTokenizer(in.readLine(), " ");
        int N = Integer.parseInt(tk.nextToken());
        long[][] dp = new long[N][N];
        int moveMentsCnt = 0;
        dp[0][0] = 1;
        for (int i = 0; i < N; i++){
            tk = new StringTokenizer(in.readLine(), " ");
            for (int j = 0; j < N; j++){
                moveMentsCnt = Integer.parseInt(tk.nextToken());
                if(moveMentsCnt > 0){
                    if(i + moveMentsCnt < N) {
                        dp[i + moveMentsCnt][j] += dp[i][j];
                    }
                    if(j + moveMentsCnt < N) {
                        dp[i][j + moveMentsCnt] += dp[i][j];
                    }
                }
            }
        }
        System.out.println(dp[N - 1][N - 1]);
    }
}

 

 

1890번: 점프

첫째 줄에 게임 판의 크기 N (4 ≤ N ≤ 100)이 주어진다. 그 다음 N개 줄에는 각 칸에 적혀져 있는 수가 N개씩 주어진다. 칸에 적혀있는 수는 0보다 크거나 같고, 9보다 작거나 같은 정수이며, 가장

www.acmicpc.net

 

'Study > Problem Solving' 카테고리의 다른 글

[BOJ_21317] 징검다리 건너기  (1) 2024.02.25
[BOJ_2156] 포도주 시식  (0) 2024.02.21
[BOJ_2407] 조합  (0) 2024.02.19
[BOJ_1010] 다리놓기  (0) 2024.02.14
[BOJ_2748] 피보나치 수열2  (1) 2024.02.13