ABC417 (2025/08/02)
〇A問題
まーす.iconスライスしようとして,サンプル2に引っかかり,愚直にfor文で連結していくスタイルに.
Kaplam.iconこれ最後ジャッジ止まってる? 下手したらunratedなりそう
まーす.icon是非ともなってください
まーす.iconrating の変動ありました.-4(軽症)ですんで良かった.
CarpDay.iconまーす.iconさんと同じ.仕方なくb=0のときだけ場合分けして美しくない(不満).
wataumi.icon美しいかはともかく、場合分けをせずにprint(S[A:N-B])
CarpDay.icon美しい!
N_N.icon Java だとsubstring() × 2 で終了.
〇B問題
まーす.icon2重ループでdel使う
Kaplam.iconAとBでそれぞれ数字がいくつ出てきたかをまとめてから、Aを前から見てBの出てきた個数より多ければその分出力する
CarpDay.iconCounter使ったからKaplam.iconさんと同じっぽい.でもリストの大きさ考えたらまーす.iconさんのやり方の方が正解だろうね.「リストの途中を削除したらあかん」という刷り込みで時間ロス.
N_N.icon 自作の SortedList を使って問題文の通りに実装.
〇C問題
まーす.icon$ jについて,$ j - A_{j}が過去に何回現れたかを数え挙げる.
Kaplam.icon式変形する、j - i = Ai + Aj ということはAi + i = j - Ajなので,それぞれについて辞書とってがんばる
CarpDay.iconKaplam.iconさんと同じっぽい.C問題で悩んでいる途中で順位表確認して,まーす.iconさんがとっくにACしているのをみて焦る.
N_N.icon 何とか解けたけど,こういうタイプの問題は好きじゃない.単純に式変形をしたら良いみたいだけど,式が何を意味しているのかを考えてしまって時間がかかってしまった.解き方もうまく説明できないけど,結果的に式を変形したのと同じことをしていた.
〇D問題
Kaplam.icon通ったけどわかんなかった、後ろから見るような感じはしたがよくわからなかった、N <= 10000とP<=500 というところから 要素N*Pの辞書は持てそうだったのである所まで受け取った時点でのテンションについてキャッシュを持って、そこにたどり着いたらキャッシュから出せばいい(大きすぎるものは事前に累積和で落とす)、すると最後の1ケースだけTLE,dictにtupleで入れたせいだと思って高速化したらそこでテンションの最大値を見誤ってWAだったり、逆に少しでも過剰に大きくするとTLEが出たりと大量にペナ出してなんとか通した、TLEギリギリ過ぎるしよくない解法_(:3」∠)_
まーす.iconむずい.Kaplam.iconさんがEを先やってたので,Eを先に見る.→地獄を見る
CarpDay.iconペナルティの上限が1000なので,まずはDPで初期状態x(≦1000)から最終的にどれだけ変化するかを求めておく.入力例2のパターンに対応できるように,初期状態からペナルティ減少し続けて1000以下になる品数を累積和+二分探索で計算して組み合わせる.デバッグ苦労したので,ACとって思わずガッツポーズ.
〇E問題
まーす.icon DFSだろうが,ずっとTLE.しんどい......
Kaplam.icon辞書順に小さいということはそれぞれの要素について貪欲に小さいものを選べばいいので辞書順に小さいところからDFSする、最初にyにたどり着いたら終わり
CarpDay.icon伏字感謝.時間間に合わず,コンテスト終了10分後に提出するもTLE.明日ゆっくり考えます.またね!
CarpDay.icon眠る前に気になって少し触る.TLEのとき難しく考えすぎたので,素直にDFSにしたら125msでAC.
N_N.icon 深さ優先探索では TLE × 6 がどうしても取れなかった.(Kaplam.icon さんとアルゴリズムは同じなんだけど,Java だからかな?)
まーす.icon同じく.
N_N.icon TLE × 6 を取るにはある(枝刈り的な)工夫が必要らしいんだけど,Kaplam.icon さんの伏字の説明からはその工夫が読み取れなかった.
まーす.icon 私もKaplam.icon さんの伏字と似たようなことをやっていて,TLE ケースがよく分かっていないんですよね......
Kaplam.icon工夫したっけ...?
N_N.iconコードみたけど,たぶんしてる(st に add() するだけで,discard() してないところ).自分で工夫と意識してないのかも...
CarpDay.iconすでに訪問した点(パス上の点+訪問したけどゴールにつけなかった点)をもう一度訪問しないようにしたらTLEとれました~.
N_N.iconそれです!!
まーす.iconなるほど,確かに全然気が付かなかった.......ありがとうございます.AC でました.
Kaplam.iconまーす.iconさんのコードと見比べてどこ違う...? って全然見つからなかったんですが確かに、全然気付きませんでした_(:3」∠)_
〇F問題
Kaplam.icon使うものが何かはわかってたけどDでグダリすぎて時間足りなかったしWAわかって記念提出したらオーダーは問題ないと踏んでたのにTLE43とか出てるし_(:3」∠)_
CarpDay.iconコンテスト後に確認.最近(前回も)あれ使っていないから,使い方忘れつつある..
CarpDay.icon久しぶりに遅延セグ木使って載せた.自分の知識リハビリに時間がかかったものの,割と典型的なパターンだったため,意外なほど簡単にAC.D/E/Fの中でDが一番難しかったんちゃう?と思ったら,DifficultyはE,D,Fの順でした.
〇G問題