結果
問題 |
No.2194 兄弟の掛け引き
|
ユーザー |
|
提出日時 | 2023-02-17 16:36:04 |
言語 | OCaml (5.2.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 643 bytes |
コンパイル時間 | 1,642 ms |
コンパイル使用メモリ | 21,320 KB |
実行使用メモリ | 10,624 KB |
最終ジャッジ日時 | 2024-07-19 09:23:09 |
合計ジャッジ時間 | 4,039 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 2 TLE * 1 |
other | -- * 14 |
ソースコード
let solve a b c = let max_n = (c + b) / a in let rec solve_core n = let ans = if n * a - b = c || n * a - b <= 0 && n * a = c then Some n else None in match ans with Some n when n = max_n -> n :: [] | None when n = max_n -> [] | None -> solve_core (n+1) | Some n -> n :: solve_core (n+1) in solve_core 1 let rec print_list = function [] -> print_endline "" | a :: rest -> print_endline (string_of_int a); print_list rest let _ = let a, b, c = Scanf.scanf "%d %d %d" (fun a b c -> a, b, c) in let ans = solve a b c in if List.length ans > 0 then print_list ans else print_endline "-1"