結果
問題 |
No.842 初詣
|
ユーザー |
![]() |
提出日時 | 2025-09-10 00:34:59 |
言語 | F# (F# 4.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 716 bytes |
コンパイル時間 | 15,052 ms |
コンパイル使用メモリ | 201,116 KB |
実行使用メモリ | 30,720 KB |
最終ジャッジ日時 | 2025-09-10 00:35:23 |
合計ジャッジ時間 | 19,205 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 WA * 4 |
コンパイルメッセージ
復元対象のプロジェクトを決定しています... /home/judge/data/code/main.fsproj を復元しました (928 ミリ秒)。 /home/judge/data/code/Main.fs(1,5): warning FS0025: この式のパターン マッチが不完全です たとえば、値 '[|_; _; _; _; _; _; _; _|]' はパターンに含まれないケースを示す可能性があります。 [/home/judge/data/code/main.fsproj] /home/judge/data/code/Main.fs(19,13): warning FS0025: この式のパターン マッチが不完全です たとえば、値 '[|_; _; _|]' はパターンに含まれないケースを示す可能性があります。 [/home/judge/data/code/main.fsproj] main -> /home/judge/data/code/bin/Release/net8.0/main.dll main -> /home/judge/data/code/bin/Release/net8.0/publish/
ソースコード
let [| a; b; c; d; e; f; g |] = stdin.ReadLine().Split() |> Array.map int // (n円玉) の枚数 // a:(500), b:(100), // c:(50), d:(10), // e:(5), f:(1), let coin = [ [| f; e |] [| d; c |] [| b; a |] ] let rec isGoal x sub = function | [] -> true | head :: tail -> let [| one; five |] = head let one_s = one + sub let m = x % 10 if one_s >= m then let v = (one_s + five * 5 - m) / 10 isGoal (x / 10) v tail elif five >= 1 && one_s > m - 5 then let v = (one_s + five * 5 - m - 5) / 10 isGoal (x / 10) v tail else false if isGoal g 0 coin then "YES" else "NO" |> printfn "%s"