提出 #4113002
ソースコード 拡げる
let rec fix f x = f (fix f) x;;
Scanf.(Array.(scanf " %d %d" @@ fun n m ->
let e = make n [] in
let e_rev = make n [] in
init (n-1+m) (fun i -> scanf " %d %d" @@ fun u v ->
let u,v = u-1,v-1 in
e.(u) <- v :: e.(u);
e_rev.(v) <- u :: e_rev.(v)
) |> ignore;
let root = fst @@ fold_left (fun (root,i) ls ->
(if List.length ls = 0 then i else root),i+1
) (0,0) e_rev in
let q = Queue.create () in
let v_left = init n (fun i -> List.length e_rev.(i)) in
Queue.add root q;
let par = make n 0 in
while not @@ Queue.is_empty q do
let i = Queue.pop q in
List.iter (fun j ->
v_left.(j) <- v_left.(j) - 1;
if v_left.(j) = 0 then (
par.(j) <- i + 1;
Queue.add j q;
)
) e.(i)
done;
iter (Printf.printf "%d\n") par
))
提出情報
| 提出日時 | |
|---|---|
| 問題 | D - Restore the Tree |
| ユーザ | sk0 |
| 言語 | OCaml (4.02.3) |
| 得点 | 500 |
| コード長 | 818 Byte |
| 結果 | AC |
| 実行時間 | 103 ms |
| メモリ | 15104 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 500 / 500 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | a01, a02 |
| All | a01, a02, b03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33, b34 |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| a01 | AC | 1 ms | 384 KiB |
| a02 | AC | 1 ms | 384 KiB |
| b03 | AC | 1 ms | 384 KiB |
| b04 | AC | 1 ms | 384 KiB |
| b05 | AC | 1 ms | 384 KiB |
| b06 | AC | 103 ms | 12928 KiB |
| b07 | AC | 103 ms | 12928 KiB |
| b08 | AC | 101 ms | 12928 KiB |
| b09 | AC | 54 ms | 8064 KiB |
| b10 | AC | 55 ms | 8064 KiB |
| b11 | AC | 54 ms | 8064 KiB |
| b12 | AC | 93 ms | 15104 KiB |
| b13 | AC | 93 ms | 15104 KiB |
| b14 | AC | 95 ms | 15104 KiB |
| b15 | AC | 94 ms | 12672 KiB |
| b16 | AC | 85 ms | 10880 KiB |
| b17 | AC | 94 ms | 12288 KiB |
| b18 | AC | 78 ms | 9600 KiB |
| b19 | AC | 96 ms | 13184 KiB |
| b20 | AC | 80 ms | 9856 KiB |
| b21 | AC | 92 ms | 11648 KiB |
| b22 | AC | 87 ms | 11008 KiB |
| b23 | AC | 90 ms | 12544 KiB |
| b24 | AC | 87 ms | 11264 KiB |
| b25 | AC | 90 ms | 11776 KiB |
| b26 | AC | 98 ms | 13824 KiB |
| b27 | AC | 80 ms | 9984 KiB |
| b28 | AC | 91 ms | 11520 KiB |
| b29 | AC | 100 ms | 13824 KiB |
| b30 | AC | 97 ms | 13696 KiB |
| b31 | AC | 100 ms | 13824 KiB |
| b32 | AC | 96 ms | 12672 KiB |
| b33 | AC | 93 ms | 12672 KiB |
| b34 | AC | 87 ms | 9856 KiB |