結果
問題 | No.1338 Giant Class |
ユーザー |
|
提出日時 | 2023-07-30 23:56:03 |
言語 | F# (F# 4.0) |
結果 |
AC
|
実行時間 | 1,058 ms / 2,000 ms |
コード長 | 1,072 bytes |
コンパイル時間 | 6,865 ms |
コンパイル使用メモリ | 205,816 KB |
実行使用メモリ | 62,944 KB |
最終ジャッジ日時 | 2024-10-09 18:53:02 |
合計ジャッジ時間 | 24,195 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 21 |
コンパイルメッセージ
復元対象のプロジェクトを決定しています... /home/judge/data/code/main.fsproj を復元しました (225 ms)。 MSBuild のバージョン 17.9.6+a4ecab324 (.NET) /home/judge/data/code/Main.fs(1,5): warning FS0025: この式のパターン マッチが不完全です たとえば、値 '[|_; _; _; _|]' はパターンに含まれないケースを示す可能性があります。 [/home/judge/data/code/main.fsproj] /home/judge/data/code/Main.fs(8,9): 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 [|h; w; q|] = stdin.ReadLine().Split " " |> Array.map intlet mutable available = (int64 h) * (int64 w)let mutable M = Map.emptyfor _ in 0..q-1 dolet [|y; x|] = stdin.ReadLine().Split " " |> Array.map intlet minus =if Map.containsKey (x-1) M thenlet m = M.[x-1] - yif m < 0 then0elseM <- M.Add (x-1, y)melseM <- M.Add (x-1, y)(h+1) - yavailable <- available - (int64 minus)printfn "%d" available// let arr =// [|// for i in 0..q-1 ->// let [|y; x|] = stdin.ReadLine().Split " " |> Array.map int// x, y// |] |> Array.sort |> Array.rev//// let rec count prev_x value index =// if index = arr.Length then// value// else// let x, y = arr.[index]// if prev_x <> x then// count x (value+y) (index+1)// else// count x value (index+1)//// count -1 0 0 |> printfn "%d"