提出 #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 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| 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 |