Я пытаюсь выяснить расстояние (или количество «шагов») между двумя точками в массиве. Из любой точки этого массива в любую другую точку.
Например:
Если есть карта PacMan, представляющая собой матрицу 5x5, и Пакман стоит на строке поля = 0 и столбце = 0, ему нужно сделать 8 шагов, чтобы добраться до поля r = 5, c = 5.
Но сколько шагов ему нужно, чтобы добраться до поля 3х3, если Пакман стоит на 4х5 ??
Я отчаянно пытаюсь понять это.
Это то, что у меня так далеко:
1 public static void path() {
2 int[][] ratings = new int[5][5];
3 int value = 0;
4 for(int i = 0; i<ratings.length; i++) {
5 value = i;
6 for(int j = 0; j<ratings[i].length; j++) {
7 ratings[i][j] = value;
8 value++;
9 System.out.print("-"+ratings[i][j]);
10 }
11 System.out.println();
12 }
13 }
Выход:
-0-1-2-3-4
-1-2-3-4-5
-2-3-4-5-6
-3-4-5-6-7
-4-5-6-7-8
Как видите, я пытаюсь дать каждой позиции массива определенный рейтинг пути. Начальной точкой является точка с 0. Как мне получить этот вывод в качестве примера:
-3-2-3-4-5
-2-1-2-3-4
-1-0-1-2-3
-2-1-2-3-4
-3-2-3-4-5
Я надеюсь, что вы, люди, можете помочь мне с этим. :)