ABC464 (2026/06/27)
〇A問題
まーす.icon (Eの数) > (Sの長さ) // 2かどうかで判断.
まーす.icon レートがみるみる溶ける......
まーす.icon 最近,緑difが解けなくて,水difが解けるという謎の法則が成り立ってる.
tako.icon 久しぶりに参加。ICPC頑張ってね、という思いで解きました。提出見てみてね
Kaplam.iconこの言語こういう使い道が...ありがとうございます(=゚ω゚)ノ
まーす.icon はーい!!(^^)!
CarpDay.icon すごいな!さすがWhitespaceのプロ!
kakip.iconがんばります!
Kaplam.icon次週第一クール最終回『𝑺𝒖𝒈𝒂𝒓𝒚𝑻𝒓𝒆𝒂𝒕𝑪𝒉𝒆𝒇𝒔』お楽しみに!
N_N.icon tako.iconさん久しぶり!
CarpDay.icon count使って,Eの数とWの数を比較.1 linerできず残念.
〇B問題
まーす.icon 問題文通りに......(めんどくさい)
Kaplam.icon hについて上下除いてから、hw入れ替えて、同じ操作して...とやったけど、count = 0の行列出力しない方が絶対楽に書けた
tako.icon やるだけ
N_N.icon Javaでは hw の入れ替えが簡単にできないので,上下除いた後,# の最初の出現位置の最小値と,#の最後の出現位置の最大値を求める.めんどくさかった.
CarpDay.iconB問題から始めてデバッグに苦労する.上端から下に,下端から上に,左端から右に,右端から左に,初めて#が存在する行/列を見つけて,その範囲だけ出力.
CarpDay.icon 解説見た.実装1と同じやり方なのに,コード量が圧倒的に少ない.賢いなぁ.
〇C問題
まーす.icon dictで現在の鳥の色の数を管理.$ A = Bの場合を忘れて1ペナルティ......(TLEの理由は不明)
Kaplam.icon多次元、特に3次元以上のheapqはかなり遅くなると言われています、少なくともlistと比べると非常に遅いです_(:3」∠)_
tako.icon 色が変わる日がキーで前と後がバリュー
Kaplam.iconある色が0になった時に-1、1になったら+1するいつものやつ
N_N.icon tako.icon さんと同じだけど,最初は Kaplam.icon さんのように処理をせずTLE.
CarpDay.icon 各色の個数と,各日に追加される色/削除される色を保存して,日ごとに新規色追加か,既存色消滅なら,色数を変更.
〇D問題
まーす.icon DPでやるのは思いついたが,ずっとバグ取りに苦しむ.$ \operatorname{dp}_{i, j} := (i - 1日目,i日目の状態がjであるときのi日目までの嬉しさの総和の最大値)
まーす.icon これだと多分,2回変更を加える部分が出てきそうなので,方針ミス?
CarpDay.icon i-1日目もi日目も,両方とも状態がjなの?異なる場合は??
まーす.icon $ i - 1日目が晴かつ$ i日目が晴のとき,$ j = 0.$ i - 1日目が晴かつ$ i日目が雨のとき,$ j = 1というように2日間の状態を管理していました.
CarpDay.icon 4通りの状態を取るの?それでも実装できそうだけど..
tako.icon SにするかRにするかでDP
Kaplam.icon同上、晴れ/雨について現在の状態と異なる方に+x(i) して、晴れならmax(1個前の晴れ、1個前の雨+y(i)) , 雨ならmax(1個前の晴れ、1個前の雨)
N_N.icon あ~あ,そりゃDPだよね.しかも典型的な.何か連続する三文字を見てどうこうなんて考えてて,結局WA.
CarpDay.icon D問題なので..
〇E問題
Kaplam.iconhの大きい方から探索して、各行について(query_id (後の方を小さく) 、触るw座標) というheapqで書き込む、次のhでも今までのクエリは引き継いで、idが大きいのにw座標が小さくて意味のないものを除いていくと各hについて最大w個のクエリで収まるので O(h * w * logw)
kakip.iconimosみたいなかんじ i番目のクエリならグリッドの(ri, ci)にiを書き込んでおいて、最後に左、上にchmaxで広げていく
CarpDay.icon クエリを逆順にして埋める.左上の方から埋まっていく感じ.各行にはAが残っている最も左の列index,各列にはAが残っている最も上の行を保存する.各クエリで,置く場所がA以外ならスキップ.A以外ならそこから最も上のAからR行目までがXで塗り替える行.各行はC列から左方向にAが続く範囲をXに塗り替える.今気づいたけど先述のデータを作らなくても,単純に(R,C)から上にAである限りXに変更,各行も左にAである限りがXに変更,で実装できそう.
〇F問題
kakip.icon制約が半分全列挙しろって言ってる 最後に盗む金庫iを固定して考えるとそれ以外で合計金額が[X-Ai, X)になればいい けど実装がめんどくさそう あと時間もきびしそう?
CarpDay.icon 制約から「それ」に気付かなかった.残念.
tako.icon 愚直ではだめでした
Kaplam.icon何からすればいいかな~盗む金額+1回分で分けるにしても通り数大きくなるしな~と順位表見たら当時60人ぐらいしか通ってなかったので、解かなくていいやつ! と逃げました( ˘ω˘)
CarpDay.icon 順列だと爆発するから部分和で考えたが,やっぱり順序必要じゃね?となってお手上げ.Xが総合計の半分より大きかったら,問題変形してXを半分以下にできそう,ということは考えたけど..
〇G問題