0%

OCamlでAOJを入門から解いていく

OCamlを大学の授業でやっています(つらい)
練習がてら最近のマイブーム競プロと合わせてコードを書いていこうと思った。
本当に初心者(どっちも)なのでお手柔らかに…

お世話になった問題様たち
解説の余力はありません。

1_A:Hello World

1
let () = Printf.printf "Hello World\n"

流石になんのこっちゃない。次。

1_B:X Cubic

1
let () = Printf.printf "%d\n" (Scanf.scanf "%d" (fun a -> a * a * a));;

OCamlの標準入出力でこの辺から雲行きが怪しくなる(え?)
匿名関数なるものを渡してあげる。

1_C:Rectangule

1
2
3
4
let () =
Scanf.scanf "%d %d\n" (
fun a b -> Printf.printf "%d %d\n" (a * b) (2 * a + 2 * b)
);;

萎えの書き方よりこっちのがしっくりきた(標準入力→標準出力みたいな)
出力する場所ごとに式投げてる。
既に泡吹いてる。

1_D:Watch

1
2
3
4
let () =
Scanf.scanf "%d\n" (
fun a -> Printf.printf "%d:%d:%d\n" (a / 3600) (a mod 3600 / 60) (a mod 60)
);;

上に同じ。

総評

つらい
少しずつ解いて気が向いたら記事にしていきます。