MikeMirzayanov's blog

By MikeMirzayanov, 13 years ago, In Russian

Всем привет!

Теперь вы можете писать свои решения на OСaml и Scala. Для первого из них используется компилятор версии 3.11.0, скаченный по ссылке http://caml.inria.fr/pub/distrib/ocaml-3.11/ocaml-3.11.0-win-msvc.exe. Для Scala используется последний релиз http://www.scala-lang.org/downloads/distrib/files/scala-2.9.1.final.zip.

Вот примеры решения задачи 1A - Театральная площадь на обоих языках:

OCaml

let main () =
  let gr () = Scanf.scanf " %f" (fun i -> i) in 
  let n = gr () in
  let m = gr () in
  let a = gr () in
  let f x y = ceil (x /. y) in
  Printf.printf "%.0f\n" ((f n a) *. (f m a))
  ;;
let _ = main();;


Scala

object Main extends App {
 val Array(n, m, a) = readLine.split(" ").map(_.toLong)
 def roundUp(x: Long) = x / a + (if (x % a > 0) 1 else 0)
 println(roundUp(n) * roundUp(m))
}

Как на OCaml, так и на Scala я пишу впервые — более элегантные решения прошу в комментарии :)

MikeMirzayanov

  • Vote: I like it
  • +32
  • Vote: I do not like it

13 years ago, # |
  Vote: I like it +6 Vote: I do not like it
Thanks for your great work
»
9 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Thank you!