提出 #43412100


ソースコード 拡げる

import std;

void read(T...)(string S, ref T args) {
    auto buf = S.split;
    foreach (i, ref arg; args) {
        arg = buf[i].to!(typeof(arg));
    }
}

struct pair {
    int person;
    int span;
}

void main () {
    int N, M; readln.read(N, M);
    int[][] graph = new int[][](N, 0);

    int[] p = readln.split.to!(int[]);
    p[] -= 1;
    foreach (i; 1..N) {
        graph[p[i-1]] ~= i;
        graph[i] ~= p[i-1];
    }

    int[] insurance = new int[](N);
    foreach (i; 0..M) {
        int x, y; readln.read(x, y);
        x--;
        insurance[x] = max(insurance[x], y+1);
    }

    solve(N, M, graph, insurance);
}

void solve (int N, int M, int[][] graph, int[] insurance) {
    int[] visited = new int[](N);
    // visited[i] := -1 => 未探索 | 0 => 保険未加入者 | 1 => 保険加入者
    visited[] = -1;

    DList!int Q;
    Q.insert(0);
    if (0 < insurance[0]) {
        visited[0] = 1;
    } else {
        visited[0] = 0;
    }

    while (!Q.empty) {
        auto begin = Q.front; Q.removeFront;
        foreach (to; graph[begin]) {
            if (visited[to] == -1) {
                insurance[to] = max(insurance[to], insurance[begin]-1);
                if (0 < insurance[to]) {
                    visited[to] = 1;
                } else {
                    visited[to] = 0;
                }
                Q.insertBack(to);
            }
        }
    }

    int ans = 0;
    foreach (i; 0..N) {
        if (visited[i] == 1) {
            ans++;
        }
    }

    writeln(ans);
}

提出情報

提出日時
問題 E - Family and Insurance
ユーザ InTheBloom
言語 D (DMD 2.091.0)
得点 425
コード長 1603 Byte
結果 AC
実行時間 317 ms
メモリ 34188 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 425 / 425
結果
AC × 2
AC × 53
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_srnd_00.txt, 01_srnd_01.txt, 01_srnd_02.txt, 01_srnd_03.txt, 01_srnd_04.txt, 01_srnd_05.txt, 01_srnd_06.txt, 02_rnd_00.txt, 02_rnd_01.txt, 02_rnd_02.txt, 02_rnd_03.txt, 02_rnd_04.txt, 02_rnd_05.txt, 02_rnd_06.txt, 02_rnd_07.txt, 02_rnd_08.txt, 02_rnd_09.txt, 02_rnd_10.txt, 02_rnd_11.txt, 03_path_00.txt, 03_path_01.txt, 03_path_02.txt, 03_path_03.txt, 03_path_04.txt, 03_path_05.txt, 03_path_06.txt, 03_path_07.txt, 03_path_08.txt, 03_path_09.txt, 03_path_10.txt, 03_path_11.txt, 03_path_12.txt, 03_path_13.txt, 03_path_14.txt, 03_path_15.txt, 03_path_16.txt, 03_path_17.txt, 03_path_18.txt, 03_path_19.txt, 03_path_20.txt, 03_path_21.txt, 03_path_22.txt, 04_star_00.txt, 04_star_01.txt, 04_star_02.txt, 04_star_03.txt, 04_star_04.txt, 04_star_05.txt, 05_bin_00.txt, 05_bin_01.txt, 05_bin_02.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 5 ms 3568 KiB
00_sample_01.txt AC 4 ms 3624 KiB
01_srnd_00.txt AC 2 ms 3528 KiB
01_srnd_01.txt AC 2 ms 3556 KiB
01_srnd_02.txt AC 3 ms 3636 KiB
01_srnd_03.txt AC 2 ms 3568 KiB
01_srnd_04.txt AC 2 ms 3632 KiB
01_srnd_05.txt AC 2 ms 3444 KiB
01_srnd_06.txt AC 2 ms 3548 KiB
02_rnd_00.txt AC 155 ms 5696 KiB
02_rnd_01.txt AC 107 ms 14804 KiB
02_rnd_02.txt AC 226 ms 30420 KiB
02_rnd_03.txt AC 217 ms 22796 KiB
02_rnd_04.txt AC 208 ms 23052 KiB
02_rnd_05.txt AC 121 ms 23556 KiB
02_rnd_06.txt AC 186 ms 22720 KiB
02_rnd_07.txt AC 131 ms 21916 KiB
02_rnd_08.txt AC 32 ms 5280 KiB
02_rnd_09.txt AC 141 ms 23568 KiB
02_rnd_10.txt AC 187 ms 23020 KiB
02_rnd_11.txt AC 151 ms 15328 KiB
03_path_00.txt AC 287 ms 33668 KiB
03_path_01.txt AC 301 ms 33572 KiB
03_path_02.txt AC 304 ms 33616 KiB
03_path_03.txt AC 303 ms 33628 KiB
03_path_04.txt AC 304 ms 33616 KiB
03_path_05.txt AC 284 ms 33636 KiB
03_path_06.txt AC 297 ms 33592 KiB
03_path_07.txt AC 303 ms 33608 KiB
03_path_08.txt AC 301 ms 33620 KiB
03_path_09.txt AC 302 ms 33632 KiB
03_path_10.txt AC 289 ms 33616 KiB
03_path_11.txt AC 306 ms 33648 KiB
03_path_12.txt AC 305 ms 33644 KiB
03_path_13.txt AC 302 ms 33648 KiB
03_path_14.txt AC 304 ms 33592 KiB
03_path_15.txt AC 286 ms 33596 KiB
03_path_16.txt AC 289 ms 33520 KiB
03_path_17.txt AC 221 ms 33652 KiB
03_path_18.txt AC 224 ms 33652 KiB
03_path_19.txt AC 198 ms 33576 KiB
03_path_20.txt AC 193 ms 33544 KiB
03_path_21.txt AC 192 ms 33636 KiB
03_path_22.txt AC 193 ms 33596 KiB
04_star_00.txt AC 273 ms 34136 KiB
04_star_01.txt AC 289 ms 34188 KiB
04_star_02.txt AC 289 ms 34140 KiB
04_star_03.txt AC 303 ms 34156 KiB
04_star_04.txt AC 317 ms 34172 KiB
04_star_05.txt AC 317 ms 34108 KiB
05_bin_00.txt AC 260 ms 30368 KiB
05_bin_01.txt AC 140 ms 28376 KiB
05_bin_02.txt AC 186 ms 33540 KiB