Submission #2823730


Source Code Expand

let inf = 10101010101010
let rec iter a b f = if a >= b then () else (f a; iter (a+1) b f)
let q x = x * (x+1) / 2
let () =
  let width = 3000 in
  Scanf.scanf "%d %d %d" @@ fun r g b ->
  let a = Array.init 3 (fun _ -> Array.make width inf) in
  [(r, -100); (g, 0); (b, 100)] |> List.iteri (fun n (c, p) ->
    iter 0 width (fun i ->
      let s =
        let x = i - width/2 in
        if x+c <= p then q (p - x) - q (p - (x+c))
        else if x < p then q (p - x) + q ((x+c-1) - p)
        else q ((x+c-1) - p) - q ((x-1) - p)
      in
      if i+c < width then
        a.(n).(i+c) <-
          if i = 0 then inf
          else if n = 0 then min s a.(n).(i+c-1)
          else min (s + a.(n-1).(i)) a.(n).(i+c-1)));
  a.(2) |> Array.fold_left min 10101010101010
  |> Printf.printf "%d\n"

Submission Info

Submission Time
Task D - マーブル
User lrmystp
Language OCaml (4.02.3)
Score 100
Code Size 812 Byte
Status AC
Exec Time 2 ms
Memory 2432 KB

Judge Result

Set Name sub1 sub2 All
Score / Max Score 10 / 10 30 / 30 60 / 60
Status
AC × 29
AC × 57
AC × 85
Set Name Test Cases
sub1 sample_01_ABC.txt, test_ABC_01.txt, test_ABC_02.txt, test_ABC_03.txt, test_ABC_04.txt, test_ABC_05.txt, test_ABC_06.txt, test_ABC_07.txt, test_ABC_08.txt, test_ABC_09.txt, test_ABC_10.txt, test_ABC_11.txt, test_ABC_12.txt, test_ABC_13.txt, test_ABC_14.txt, test_ABC_15.txt, test_ABC_16.txt, test_ABC_17.txt, test_ABC_18.txt, test_ABC_19.txt, test_ABC_20.txt, test_ABC_21.txt, test_ABC_22.txt, test_ABC_23.txt, test_ABC_24.txt, test_ABC_25.txt, test_ABC_26.txt, test_ABC_27.txt, test_ABC_28.txt
sub2 sample_01_ABC.txt, sample_02_BC.txt, test_ABC_01.txt, test_ABC_02.txt, test_ABC_03.txt, test_ABC_04.txt, test_ABC_05.txt, test_ABC_06.txt, test_ABC_07.txt, test_ABC_08.txt, test_ABC_09.txt, test_ABC_10.txt, test_ABC_11.txt, test_ABC_12.txt, test_ABC_13.txt, test_ABC_14.txt, test_ABC_15.txt, test_ABC_16.txt, test_ABC_17.txt, test_ABC_18.txt, test_ABC_19.txt, test_ABC_20.txt, test_ABC_21.txt, test_ABC_22.txt, test_ABC_23.txt, test_ABC_24.txt, test_ABC_25.txt, test_ABC_26.txt, test_ABC_27.txt, test_ABC_28.txt, test_BC_29.txt, test_BC_30.txt, test_BC_31.txt, test_BC_32.txt, test_BC_33.txt, test_BC_34.txt, test_BC_35.txt, test_BC_36.txt, test_BC_37.txt, test_BC_38.txt, test_BC_39.txt, test_BC_40.txt, test_BC_41.txt, test_BC_42.txt, test_BC_43.txt, test_BC_44.txt, test_BC_45.txt, test_BC_46.txt, test_BC_47.txt, test_BC_48.txt, test_BC_49.txt, test_BC_50.txt, test_BC_51.txt, test_BC_52.txt, test_BC_53.txt, test_BC_54.txt, test_BC_55.txt
All sample_01_ABC.txt, sample_02_BC.txt, sample_03_C.txt, test_ABC_01.txt, test_ABC_02.txt, test_ABC_03.txt, test_ABC_04.txt, test_ABC_05.txt, test_ABC_06.txt, test_ABC_07.txt, test_ABC_08.txt, test_ABC_09.txt, test_ABC_10.txt, test_ABC_11.txt, test_ABC_12.txt, test_ABC_13.txt, test_ABC_14.txt, test_ABC_15.txt, test_ABC_16.txt, test_ABC_17.txt, test_ABC_18.txt, test_ABC_19.txt, test_ABC_20.txt, test_ABC_21.txt, test_ABC_22.txt, test_ABC_23.txt, test_ABC_24.txt, test_ABC_25.txt, test_ABC_26.txt, test_ABC_27.txt, test_ABC_28.txt, test_BC_29.txt, test_BC_30.txt, test_BC_31.txt, test_BC_32.txt, test_BC_33.txt, test_BC_34.txt, test_BC_35.txt, test_BC_36.txt, test_BC_37.txt, test_BC_38.txt, test_BC_39.txt, test_BC_40.txt, test_BC_41.txt, test_BC_42.txt, test_BC_43.txt, test_BC_44.txt, test_BC_45.txt, test_BC_46.txt, test_BC_47.txt, test_BC_48.txt, test_BC_49.txt, test_BC_50.txt, test_BC_51.txt, test_BC_52.txt, test_BC_53.txt, test_BC_54.txt, test_BC_55.txt, test_C_56.txt, test_C_57.txt, test_C_58.txt, test_C_59.txt, test_C_60.txt, test_C_61.txt, test_C_62.txt, test_C_63.txt, test_C_64.txt, test_C_65.txt, test_C_66.txt, test_C_67.txt, test_C_68.txt, test_C_69.txt, test_C_70.txt, test_C_71.txt, test_C_72.txt, test_C_73.txt, test_C_74.txt, test_C_75.txt, test_C_76.txt, test_C_77.txt, test_C_78.txt, test_C_79.txt, test_C_80.txt, test_C_81.txt, test_C_82.txt
Case Name Status Exec Time Memory
sample_01_ABC.txt AC 1 ms 512 KB
sample_02_BC.txt AC 1 ms 512 KB
sample_03_C.txt AC 1 ms 512 KB
test_ABC_01.txt AC 1 ms 512 KB
test_ABC_02.txt AC 1 ms 512 KB
test_ABC_03.txt AC 1 ms 512 KB
test_ABC_04.txt AC 1 ms 512 KB
test_ABC_05.txt AC 1 ms 512 KB
test_ABC_06.txt AC 1 ms 512 KB
test_ABC_07.txt AC 1 ms 512 KB
test_ABC_08.txt AC 1 ms 512 KB
test_ABC_09.txt AC 1 ms 512 KB
test_ABC_10.txt AC 1 ms 512 KB
test_ABC_11.txt AC 1 ms 512 KB
test_ABC_12.txt AC 1 ms 512 KB
test_ABC_13.txt AC 1 ms 512 KB
test_ABC_14.txt AC 1 ms 512 KB
test_ABC_15.txt AC 1 ms 512 KB
test_ABC_16.txt AC 1 ms 512 KB
test_ABC_17.txt AC 1 ms 512 KB
test_ABC_18.txt AC 1 ms 512 KB
test_ABC_19.txt AC 1 ms 512 KB
test_ABC_20.txt AC 1 ms 512 KB
test_ABC_21.txt AC 1 ms 512 KB
test_ABC_22.txt AC 1 ms 512 KB
test_ABC_23.txt AC 1 ms 512 KB
test_ABC_24.txt AC 1 ms 512 KB
test_ABC_25.txt AC 1 ms 512 KB
test_ABC_26.txt AC 1 ms 512 KB
test_ABC_27.txt AC 1 ms 512 KB
test_ABC_28.txt AC 2 ms 2432 KB
test_BC_29.txt AC 1 ms 512 KB
test_BC_30.txt AC 1 ms 512 KB
test_BC_31.txt AC 1 ms 512 KB
test_BC_32.txt AC 1 ms 512 KB
test_BC_33.txt AC 1 ms 512 KB
test_BC_34.txt AC 1 ms 512 KB
test_BC_35.txt AC 1 ms 512 KB
test_BC_36.txt AC 1 ms 512 KB
test_BC_37.txt AC 1 ms 512 KB
test_BC_38.txt AC 1 ms 512 KB
test_BC_39.txt AC 1 ms 512 KB
test_BC_40.txt AC 2 ms 2432 KB
test_BC_41.txt AC 1 ms 512 KB
test_BC_42.txt AC 1 ms 512 KB
test_BC_43.txt AC 1 ms 512 KB
test_BC_44.txt AC 1 ms 512 KB
test_BC_45.txt AC 1 ms 512 KB
test_BC_46.txt AC 1 ms 512 KB
test_BC_47.txt AC 1 ms 512 KB
test_BC_48.txt AC 1 ms 512 KB
test_BC_49.txt AC 1 ms 512 KB
test_BC_50.txt AC 1 ms 512 KB
test_BC_51.txt AC 1 ms 512 KB
test_BC_52.txt AC 1 ms 512 KB
test_BC_53.txt AC 1 ms 512 KB
test_BC_54.txt AC 1 ms 512 KB
test_BC_55.txt AC 1 ms 512 KB
test_C_56.txt AC 1 ms 512 KB
test_C_57.txt AC 1 ms 512 KB
test_C_58.txt AC 1 ms 512 KB
test_C_59.txt AC 1 ms 512 KB
test_C_60.txt AC 1 ms 512 KB
test_C_61.txt AC 1 ms 512 KB
test_C_62.txt AC 1 ms 512 KB
test_C_63.txt AC 1 ms 512 KB
test_C_64.txt AC 1 ms 512 KB
test_C_65.txt AC 1 ms 512 KB
test_C_66.txt AC 1 ms 512 KB
test_C_67.txt AC 1 ms 512 KB
test_C_68.txt AC 1 ms 512 KB
test_C_69.txt AC 1 ms 512 KB
test_C_70.txt AC 2 ms 2432 KB
test_C_71.txt AC 1 ms 512 KB
test_C_72.txt AC 1 ms 512 KB
test_C_73.txt AC 1 ms 512 KB
test_C_74.txt AC 1 ms 512 KB
test_C_75.txt AC 1 ms 512 KB
test_C_76.txt AC 1 ms 512 KB
test_C_77.txt AC 1 ms 512 KB
test_C_78.txt AC 2 ms 2432 KB
test_C_79.txt AC 1 ms 512 KB
test_C_80.txt AC 1 ms 512 KB
test_C_81.txt AC 1 ms 512 KB
test_C_82.txt AC 1 ms 512 KB