Submission #30686126


Source Code Expand

import java.util.*;

class Main {
    public static void main(String[] args) {
        var sc = new Scanner(System.in);
        int n = sc.nextInt();
        int sx = sc.nextInt() - 1, sy = sc.nextInt() - 1;
        int gx = sc.nextInt() - 1, gy = sc.nextInt() - 1;
        var s = new boolean[n][n];
        for (int i = 0; i < n; i++) {
            var t = sc.next();
            for (int j = 0; j < n; j++)
                s[i][j] = t.charAt(j) == '#';
        }
        var q = new ArrayDeque<Integer>();
        var d = new int[n][n];
        final int inf = (int) 1e7;
        for (var i : d)
            Arrays.fill(i, inf);
        d[sx][sy] = 0;
        q.add(sx);
        q.add(sy);
        int[] dx = { 1, -1, 1, -1 };
        int[] dy = { 1, 1, -1, -1 };
        while (!q.isEmpty()) {
            int x = q.remove();
            int y = q.remove();
            for (int i = 0; i < 4; i++) {
                int xx = x, yy = y;
                while (true) {
                    xx += dx[i];
                    yy += dy[i];
                    if (xx < 0 || xx >= n)
                        break;
                    if (yy < 0 || yy >= n)
                        break;
                    if (s[xx][yy])
                        break;
                    if (d[xx][yy] > d[x][y] + 1) {
                        d[xx][yy] = d[x][y] + 1;
                        q.add(xx);
                        q.add(yy);
                    }
                    if (d[xx][yy] <= d[x][y])
                        break;
                }
            }
        }
        System.out.println(d[gx][gy] == inf ? -1 : d[gx][gy]);
    }
}

Submission Info

Submission Time
Task E - Bishop 2
User sounansya
Language Java (OpenJDK 11.0.6)
Score 500
Code Size 1682 Byte
Status AC
Exec Time 579 ms
Memory 107336 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 60
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt
Case Name Status Exec Time Memory
sample_01.txt AC 107 ms 35544 KiB
sample_02.txt AC 115 ms 35476 KiB
sample_03.txt AC 105 ms 35540 KiB
test_01.txt AC 105 ms 35456 KiB
test_02.txt AC 108 ms 35504 KiB
test_03.txt AC 106 ms 35536 KiB
test_04.txt AC 110 ms 35508 KiB
test_05.txt AC 108 ms 35524 KiB
test_06.txt AC 428 ms 68148 KiB
test_07.txt AC 472 ms 61160 KiB
test_08.txt AC 238 ms 43168 KiB
test_09.txt AC 130 ms 37240 KiB
test_10.txt AC 155 ms 38712 KiB
test_11.txt AC 563 ms 104208 KiB
test_12.txt AC 373 ms 59572 KiB
test_13.txt AC 146 ms 37812 KiB
test_14.txt AC 151 ms 37628 KiB
test_15.txt AC 177 ms 39516 KiB
test_16.txt AC 142 ms 36964 KiB
test_17.txt AC 345 ms 50048 KiB
test_18.txt AC 296 ms 49088 KiB
test_19.txt AC 115 ms 35520 KiB
test_20.txt AC 250 ms 48028 KiB
test_21.txt AC 181 ms 40388 KiB
test_22.txt AC 402 ms 60828 KiB
test_23.txt AC 200 ms 40268 KiB
test_24.txt AC 179 ms 39472 KiB
test_25.txt AC 153 ms 38876 KiB
test_26.txt AC 391 ms 73636 KiB
test_27.txt AC 456 ms 66644 KiB
test_28.txt AC 208 ms 40492 KiB
test_29.txt AC 250 ms 52356 KiB
test_30.txt AC 292 ms 62956 KiB
test_31.txt AC 532 ms 85112 KiB
test_32.txt AC 505 ms 71404 KiB
test_33.txt AC 492 ms 69116 KiB
test_34.txt AC 376 ms 62224 KiB
test_35.txt AC 275 ms 61236 KiB
test_36.txt AC 489 ms 72312 KiB
test_37.txt AC 475 ms 72460 KiB
test_38.txt AC 469 ms 68660 KiB
test_39.txt AC 279 ms 61308 KiB
test_40.txt AC 272 ms 61344 KiB
test_41.txt AC 499 ms 72684 KiB
test_42.txt AC 548 ms 72932 KiB
test_43.txt AC 486 ms 68516 KiB
test_44.txt AC 278 ms 61536 KiB
test_45.txt AC 579 ms 106172 KiB
test_46.txt AC 575 ms 107336 KiB
test_47.txt AC 574 ms 106880 KiB
test_48.txt AC 575 ms 106300 KiB
test_49.txt AC 567 ms 106308 KiB
test_50.txt AC 559 ms 106168 KiB
test_51.txt AC 577 ms 106228 KiB
test_52.txt AC 572 ms 106324 KiB
test_53.txt AC 565 ms 106272 KiB
test_54.txt AC 551 ms 103972 KiB
test_55.txt AC 557 ms 104124 KiB
test_56.txt AC 543 ms 104224 KiB
test_57.txt AC 355 ms 68060 KiB