ABC465 (2026/07/04)
https://atcoder.jp/contests/abc465/tasks
〇A問題
まーす.icon 分母を払って比較.
Kaplam.iconここらが潮時ということで、今回をもってABC含めて競プロ引退予定です、fastestが結局まだmax2位止まりでそこだけ気になりますが、参加するにしてもそれ狙い程度になると思います、気まぐれで参加とかもあるかもだけどわかんない、3年と2か月(時々幽霊部員になったりもしてた気がしますが)ありがとうございました!
Kaplam.icon個人的に作りこんでいたテストシステム関連についてもし興味ある方がいれば仕組みの解説とか実装方法とか残してもいいですけどどうなんでしょうね、kakipさん由来で拡張機能色々知った上で、私はなお私のが最強と思っているのですが、結局私しか使ってないので幻覚な気はしますし...まぁこれだけ折角なのでどこかに残す気がします?
まーす.icon 昨日はおつかれさまでした~.一緒にチーム組んでくれてありがとう.(本音:一緒にABCやって欲しいな......)
Kaplam.icon3年ちょっと4年分お疲れ様でした、随分長い付き合いになりましたがちょっとそろそろあれこれ持ちそうにないので倒れる前に負担減らせってうちの人にも言われてて...(´・ω・`)
まーす.icon それは大変......
Kaplam.iconまぁ少なくとも今日みたいに徹夜明けの日に参加するのはやめますわ、疲れる_(:3」∠)_
まーす.icon たまに構ってください<(_ _)>
Kaplam.icon何か問題送ってきたら見ないでもないのでどこかで会う時に話題に出てくる分にはなんとかしないでもなくもなくもなくもなくも ↓でもdiffは1200ぐらい限度にしてね!!
まーす.icon そんなこと言われたら,未解決問題送っちゃう
N_N.icon$ O(\infty)か$ O(有限) かの問題なら送れますよ!
CarpDay.icon 本日はお疲れだから参加難しいかな,と思っていたのに,Kaplam.iconさんもまーす.iconさんも参加してくれたので嬉しかったです.まだ卒業まで日にちがありますので,tako.iconさんのようにふらりと参加してくれると嬉しいです.
Kaplam.icon精神面はあれですが体力面は某氏に串カツ食べさせてもらって回復しました! いつかまーす.iconが水色になったりしたらそのお祝いで出たりするかもです( ˘ω˘)
N_N.icon 昨日はお疲れ様でした.次の日にABCをやってるのが凄いと思います!競プロは,やっぱり競技なんですね.現役でなくても楽しめる範囲で楽しむ手もあるとは思います.それよりも,これから研究が本番になってきますので,悔いのないように研究して卒業しましょう!!
Kaplam.iconあれこれで修論止まってるので夏休み頑張ります..._(:3」∠)_
CarpDay.icon まーす.iconさんと同じく.B問題でぼろぼろの状態で解いたので,3A > 2Bなのに 3A = 2Bと見間違えて,サンプル合わず焦る(汗)
N_N.icon まーす.icon さんと同じく.
〇B問題
まーす.icon for文で1時間ずつ見ていく.
Kaplam.iconl <= i < rだったらx足して、違ったらy足す、制約が小さいので1時間ずつやればいい
CarpDay.icon maxとかminとか使って,最初のYの時間,Xの時間,後のYの時間,それぞれの費用を合計,で求まったと思ったのにWA.2回も.全然理由が分からず,if文でガリガリ場合分けしてやっとAC..
CarpDay.icon そっか,1時間ずつやればいいんか..
N_N.icon 問題の構造をまともに考えず,ときに力技で解いた方が良いという競プロ的な考えにようやく馴れてきたかも.for 文で1時間ごと回して L と R の間に入っている時間だけカウント.学生が書いたら怒るレベルのプログラムをようやく書けるようになってきた?
〇C問題
Kaplam.icon大きい値から埋めていって、まだ埋まっていない範囲について、反転フラグが建っていたら左端、折れていたら右端に入れる
まーす.icon deque$ \operatorname{ans}に対し,$ k = 1, 2, \dots, Nの順で以下を行う.
まーす.icon (i) $ S_{k} = 〇の場合,まず反転フラグを反転させる(TrueならFalseに,FalseならTrue).反転フラグがTrueの場合は$ \operatorname{ans}の一番前に追加.反転フラグがFalseの場合は$ \operatorname{ans}の一番後ろに追加.
まーす.icon (ii) $ S_{k} = ✕の場合.反転フラグがFalseの場合は$ \operatorname{ans}の一番前に追加.反転フラグがTrueの場合は$ \operatorname{ans}の一番後ろに追加.
まーす.icon 上記操作が終わったら,反転フラグの真偽に応じて,$ \operatorname{ans}をreverseさせる.
CarpDay.icon Kaplam.iconさんと同じっぽい.端からパタパタ.
〇D問題
Kaplam.icon操作について、xをkで切り捨てるか、x*k <= < (x+1)*k の値にする操作と考える、この時後者の操作をしてから前者の操作をしても元の値に戻るだけなので、考える操作は、前者を0回以上やってから、後者の操作を最小何回やればyが取り得る値の範囲に収まるか、というのを求める、必ず満たす操作がある件について、x = 1の時にどの値も取るから...あれでもサンプルにx=1通らないものある...って混乱してEF見てたりしたけど全部取るのx = 0の時ね
Kaplam.icon解説と全然違うじゃんシンプルね...
kakip.iconK進数考えるとよさそう
まーす.icon 最初に$ X < Yという状態を作り( X //= K を$ 0回以上繰り返すことにより実現可能),後はもう一つの操作である,「$ xに対して,$ \operatorname{floor} \left( \frac{y}{K} \right) = x となるような$ yを選び,$ xを$ yに変更する」を繰り返す.
CarpDay.icon ユークリッドの互除法のように大きい方をKで割り続けて,等しくなるまでの操作回数.
〇E問題
Kaplam.icon場合分け重そうだったので飛ばした
kakip.iconDP?
まーす.icon 桁DPを頑張って実装中.場合分けが多そう.
CarpDay.icon 桁DPだけど,3条件のうち1条件のみ,が分からずF問題へ.戻って,「桁数(500通り)×「smallerか否か(2通り)」×「3の剰余(3通り)」×「3を含むか(2通り)」×「各数値を使用しているかを表す10ビット(1024通り)」の5次元リストを作って,割り当てる数値に関するループと合わせて6重ループで全ての場合を計算.サンプル1は合ったけど,サンプル2以降合わずにタイムアップ.
〇F問題
Kaplam.icon Trie木は作ったけど、欲しい値の範囲が非連続的だから累積和もとれないし、範囲についてもいっぱいになるし...でわかんない
CarpDay.icon KD木の6次元バージョンなのかな?と思いつつ,KD木という名前自体,今さっき検索して思い出したレベルで使ったことないので,早々に諦める.問題を理解するのに時間がかかったので,その分もったいなかった..
〇G問題
#AtCoder #ABC