Submission #3220693


Source Code Expand

let () = Scanf.scanf "%d %d\n" @@ fun n l ->
  let xds = Array.init n @@ fun _ ->
    Scanf.scanf "%d %c\n" @@ fun x d -> x, d in
  Printf.printf "%d\n" @@
  match
    Array.fold_left (fun (acc, st) (x', d) ->
      match st, d with
      | `Right (r, x), 'R' ->
          acc + r * (x' - x - 1), `Right (r + 1, x')
      | `Right (r, x), 'L' ->
          acc, `Left (x, x', r, 1, x')
      | `Left (xr, xl, r, l, x), 'L' ->
          acc + x' - x - 1, `Left (xr, xl, r, l + 1, x + 1)
      | `Left (xr, xl, r, l, _), 'R' ->
          acc + (xl - xr - 1) * max r l, `Right (1, x'))
    (0, `Right (0, 0)) xds
  with
  | acc, `Right (r, x) -> acc + r * (l - x)
  | acc, `Left (xr, xl, r, l, _) -> acc + (xl - xr - 1) * max r l

Submission Info

Submission Time
Task C - ウサギ跳び
User fetburner
Language OCaml (4.02.3)
Score 100
Code Size 743 Byte
Status AC
Exec Time 52 ms
Memory 6784 KB

Compile Error

File "./Main.ml", line 7, characters 6-378:
Warning 8: this pattern-matching is not exhaustive.
Here is an example of a value that is not matched:
(`Left (_, _, _, _, _), 'a')

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 35
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 384 KB
sample_02.txt AC 1 ms 384 KB
sample_03.txt AC 1 ms 384 KB
subtask1_01.txt AC 1 ms 384 KB
subtask1_02.txt AC 1 ms 384 KB
subtask1_03.txt AC 43 ms 6144 KB
subtask1_04.txt AC 43 ms 6144 KB
subtask1_05.txt AC 47 ms 6144 KB
subtask1_06.txt AC 46 ms 6144 KB
subtask1_07.txt AC 46 ms 6528 KB
subtask1_08.txt AC 49 ms 6784 KB
subtask1_09.txt AC 50 ms 6144 KB
subtask1_10.txt AC 49 ms 6656 KB
subtask1_11.txt AC 49 ms 6144 KB
subtask1_12.txt AC 43 ms 6144 KB
subtask1_13.txt AC 46 ms 6144 KB
subtask1_14.txt AC 49 ms 6144 KB
subtask1_15.txt AC 50 ms 6144 KB
subtask1_16.txt AC 52 ms 6400 KB
subtask1_17.txt AC 22 ms 4608 KB
subtask1_18.txt AC 24 ms 5376 KB
subtask1_19.txt AC 7 ms 3072 KB
subtask1_20.txt AC 39 ms 5760 KB
subtask1_21.txt AC 12 ms 3712 KB
subtask1_22.txt AC 18 ms 4096 KB
subtask1_23.txt AC 35 ms 6400 KB
subtask1_24.txt AC 16 ms 3968 KB
subtask1_25.txt AC 39 ms 6016 KB
subtask1_26.txt AC 45 ms 6784 KB
subtask1_27.txt AC 2 ms 1024 KB
subtask1_28.txt AC 48 ms 6144 KB
subtask1_29.txt AC 35 ms 5504 KB
subtask1_30.txt AC 12 ms 5504 KB
subtask1_31.txt AC 31 ms 6528 KB
subtask1_32.txt AC 47 ms 6016 KB