JAVA 求助
查看原帖
JAVA 求助
346510
sparrowbot楼主2021/2/9 19:40

初学JAVA的萌新,这段代码在idea上是没错的,但洛谷上就RE,问问大佬这是为什么???

package problem;

import java.util.Scanner;

public class Main {
    static boolean[][] Map = new boolean[25][25];
    static long[][] f = new long[25][25];

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int Xb = sc.nextInt() + 1, Yb = sc.nextInt() + 1, Xh = sc.nextInt() + 1, Yh = sc.nextInt() + 1;
        f[1][1] = 1;
        int[] Xm = new int[]{0, 1, 2, 2, 1, -1, -2, -2, -1};
        int[] Ym = new int[]{0, 2, 1, -1, -2, -2, -1, 1, 2};
        for (int i = 0; i < 9; i++) {
            int xx = Xh + Xm[i], yy = Yh + Ym[i];
            if (xx < 0 || yy < 0 || xx > Xb || yy > Xb) continue;
            Map[xx][yy] = true;
        }
        for (int i = 1; i <= Xb; i++) {
            for (int j = 1; j <= Yb; j++) {
                if (i == 1 && j == 1 || Map[i][j]) continue;
                f[i][j] = Math.max(f[i][j], (f[i - 1][j] + f[i][j - 1]));
            }
        }
        System.out.println(f[Xb][Yb]);
    }
}

2021/2/9 19:40
加载中...