結果
| 問題 |
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"