結果

問題 No.1338 Giant Class
ユーザー natoriusannatoriusan
提出日時 2023-07-30 23:19:30
言語 F#
(F# 4.0)
結果
WA  
実行時間 -
コード長 914 bytes
コンパイル時間 8,919 ms
コンパイル使用メモリ 197,668 KB
実行使用メモリ 435,988 KB
最終ジャッジ日時 2024-04-18 00:30:53
合計ジャッジ時間 21,018 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 312 ms
33,912 KB
testcase_01 AC 312 ms
34,692 KB
testcase_02 WA -
testcase_03 WA -
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 RE -
testcase_14 WA -
testcase_15 RE -
testcase_16 RE -
testcase_17 RE -
testcase_18 RE -
testcase_19 RE -
testcase_20 RE -
testcase_21 RE -
testcase_22 RE -
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.fsproj を復元しました (255 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/

ソースコード

diff #

let [|h; w; q|] = stdin.ReadLine().Split " " |> Array.map int


let seatArr = Array.replicate w (h+1)
let mutable available = h * w

for _ in 0..q-1 do
    let [|y; x|] = stdin.ReadLine().Split " " |> Array.map int
    let minus =
        let m = seatArr.[x-1] - y
        if m < 0 then
            0
        else m
    seatArr.[x-1] <- y
    available <- available - 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"
0