kwm_t

kwm_tのメモ

2023-01-01から1年間の記事一覧

2023年

■AtCoder AGCを何回かサボった 青に落ちても黄色にはすぐ戻れるようにはなった。 2200(国内アクティブ200位程度)ぐらいになりたいね■yukicoder できるだけリアルタイム参加 一時期過去問埋めまくってたけど飽きちゃった■Codeforces 薄橙になったのをいいこと…

ABC334

ここ100年で一番体調が悪かった ■A - Christmas Present if ■B - Christmas Trees 頭が回ってないのでceilとfloorを負にも対応して関数化したのを忘れるなど ■C - Socks 2 頭が回ってないので重実装をする ■D - Reindeer and Sleigh upper_boundは頭回ってな…

ABC333

■A - Three Threes for ■B - Pentagon 比較 ■C - Repunit Trio 想定がよくわからない next_permutationを3発 ■D - Erase Leaves 木dp ■E - Takahashi Quest 後ろからシミュレーションして 前からもシミュレーション ■F - Bomb Game 2 dp[i][j]:=i人残りj番…

Starters 112 Divison 1 (Rated till 6 Stars)

■Maximise Sum 1が連続してるなら最後以外はIDK 0が一人でもいればNO ■Cursed Indices ちょっとだけ難しい 前から可能な限り最適に作る ■Yet Another Array Game s=0 取れる要素が決まる s=1 取る個数を全部試す ■Permutation Construction 実験すると 7のと…

ABC332

■A - Online Shopping if ■B - Glass and Mug 問題文通りにやる ■C - T-shirts やる ■D - Swapping Puzzle next_permutationを二重に ■E - Lucky bag dp[i][j]:=集合iをj個の集合に分けた時の分散の最小値 遷移はO(3^n)で自明。 なんと本質は、浮動小数点誤…

Codeforces Round 914 (Div. 2)

■A. Forked! 全列挙 ■B. Collecting Game dpっぽくする ■C. Array Game k>=3なら0になる 後は全列挙 ■D1. Set To Max (Easy Version) ■D2. Set To Max (Hard Version) どこから取ってくるかを考える セグ木で適当に

ARC169

■A - Please Sign 寄与を考える。 グラフとしてみると、rootからの深さと二項係数が関係ある。 係数になる二項係数は単調なので深さを深い方から見て符号を見る ■B - Subsegments with Small Sums iから見たときどこまでが塊になるかを考慮して後ろからdp ■C…

Starters 111 Division 1 (Rated till 6 Stars)

■Beautiful Strings Π各文字の出現回数+1 ■Prefixing Setで適当に管理した上で貪欲 ■LCM Mania nが2冪だと不可能 (2^n,2^n,2^n*p)のような形 ■Prime Range Game 只のnim ■ODI Cricket 後から貪欲 ■Component Count i*jに全てが収まってk個が塗られているかつ…

Educational Codeforces Round 159 (Rated for Div. 2)

■A. Binary Imbalance "111111"ならダメ ■B. Getting Points 最終日から出席をする二分探索 ■C. Insert and Equalize 差のgcdを取って適当に ■D. Robot Queries lower_boundを左右から適当に ■E. Collapsing Strings Trie木 ■F. Trees and XOR Queries Again…

ABC331

■A - Tomorrow やる ■B - Buy One Carton of Milk dp ■C - Sum of Numbers Greater Than Me mapで管理 ■D - Tile Pattern 面倒枠 2D累積和*繰り返しを省略 ■E - Set Meal 二分探索 ■F - Palindrome Query セグ木に載せてハッシュにして比較 ■G - Collect Th…

PAST16

PAST16 ■A - ツバメ if ■B - スロット setにいれる ■C - コンテスト 配列 ■D - 相対評価のスコア long longで適当に ■E - 10 の n 乗 1000000かどうか ■F - 式の評価 やるだけ 文字列の最後に'*'を追加すると楽 ■G - N個の三角形 next_permutationで列挙し n…

Starters 110 Division 1 (Rated till 5-stars)

■Monsters 全部試す ■Am I Lucky! 書いてる通り ■Marbles 前計算 ■Tetris dp[i][j]:=i消したjの手番 ■Tom and Jerry ギャグ ■World Cup 問題の意味がわからん

Codeforces Round 911 (Div. 2)

■A. Cover in Water 長さ3の区間があれば2 そうでないなら'.'の数 ■B. Laura and Operations 状態数が300^3程度なのでdpテーブルを前計算 多分なんか法則ある ■C. Anji's Binary Tree シンプル木dp ■D. Small GCD よくあるやつ 除原理ってやつ ■E. Transitiv…

PAST15

■A - ペナルティ cout ■B - 殿堂入り if else ■C - 円の描画 for for ■D - レコーダー 難読 ■E - 合計得点 bit全探索 ■F - 番号付け pairで持ってsort ■G - N-SAT bit全探索 ■H - 和で表現 これぐらいならwhileで十分間に合う ■I - 最大公約数の最大値 無限…

ABC330

■A - Counting Passes if ■B - Minimize Abs 1 if (a else if (r else cout ■C - Minimize Abs 2 どちらか固定で ■D - Counting Ls やるだけ ■E - Mex and Update 区間setを持ってると殴れる ■F - Minimize Bounding Square SlopeTrickで殴る TLがきつい ■G …

Starters 109 Division 1 (Rated till 5 Stars)

■Minimum XOR 全部かけ合わせておく ■Alter Ego 偶数奇数で分ける ■Chroma Swap きれいな実装方法が分からず。 Bに一つでも同じ色があれば好きに入れ替えられるので貪欲に、 unionfindで適当にやった ■Chef Lost an Array 丁寧に実装する ■Rigged Game 全方…

ARC168

青堕ち ■A - >>>>>の部分だけ考える ■B - Arbitrary Nim 奇数個の要素だけ考える 最大値-1 or 0 or -1 ■C - Swap Characters A->B,A->C,B->C,B->A,C->A,C->B の数を決めうつ。 対称性より A->B->A B->C->B C->A->C A->B->C->A A->C->B->Aを考えればよく後ろ2…

ABC328

■A - Spread はい ■B - Next sortして適当に ■C - Count xxx しゃくとり方 ■D - Election Quick Report セグ木 ■E - Stamp dp[i][j]:=iまで塗って最後にj番目の文字で塗った ■F - Colored Ball マージテク ■G - Delivery on Tree むずい

Codeforces Round 909 (Div. 3)

■A. Game with Integers 問題の意味を理解できず サンプル見て適当に投げる ■B. 250 Thousand Tons of TNT 約数列挙と累積和 ■C. Yarik and Array わからなくてセグ木をつかう(は?) ■D. Yarik and Musical Notes 2^x/xを考える ■E. Queue Sort 一番前の最小…

ABC328

■A - Not Too Hard forとif ■B - 11/11 全部試す ■C - Consecutive 累積和 ■D - Take ABC Stackなりvectorで ■E - Modulo MST 使う辺のパターンを全部試す ■F - Good Set Query UnionFind_Potential ■G - Cut and Reorder おそらく、操作1は一回でいい なの…

ABC327

■A - ab if (std::string::npos != s.find("ab")) cout else if (std::string::npos != s.find("ba")) cout else cout ■B - A^A 1から16試す ■C - Number Place やる ■D - Good Tuple Problem 二部グラフ判定 ■E - Maximize Rating dpするだけ。分母と引かれ…

ABC326

■A - 2UP3DOWN はい ■B - 326-like Numbers はい ■C - Peak はい ■D - ABC Puzzle どうやってきれいに実装するんですか? 候補が20^5で収まるので全列挙 ■E - Revenge of "The Salary of AtCoder Inc." 簡単 ■F - Robot Rotation 半分全列挙と復元 ■G - Unlo…

Codeforces Round 904 (Div. 2)

■A. Simple Design はい ■B. Haunted House 困ったので区間setを持ち出す ■C. Medium Design 困ったので双対セグ木を三本持ち出す バグらせまくって一時間使う ■D. Counting Rhyme 得意そうな見た目をしていたので適当にすると iを割り切るものがaにいくつあ…

ABC325

調子悪っ ■A - Takahashi san はい ■B - World Meeting 適当に ■C - Sensors dsu ■D - Printing Machine priority_queueで管理 ■E - Our clients, please wait a moment ダイクストラ ■F - Sensor Optimization Dilemma dp[i][j]:= iまで見た、センサー1の個…

ARC167

■A - Toasts for Breakfast Party できるだけ均等にしたい ■B - Product of Divisors Bが奇数でAが平方数の時が罠 ■C - MST on Line++ dp[i][j]:=選択個数がi,最後にjを選択した選び方の{通り数、連結個数の総和} みたいなことをして頑張る ■D - Good Permut…

ABC324

■A - Same std::setとか ■B - 3-smooth Numbers while (0 == n % 2)n /= 2; while (0 == n % 3)n /= 3; ■C - Error Correction const参照にしないとtleした。 ■D - Square Permutation set::mapにvectorをkeyにする そんなことはしなくていい ■E - Joint Two…

ARC166

■A - Replace C or Swap AB YのCの位置で区間を分けて考える AB->BAの置き換えてできるのはBを前に持ってくる動き。 後は丁寧に実装 ■B - Make Multiples / a,b,c a,bc b,ac c,ab abc の5パターンを丁寧に実装する それぞれ上位3つ程度のみの比較でいいので …

ABC323

■A - Weak Beats やる ■B - Round-Robin Tournament sort ■C - World Tour Finals sort ■D - Merge Slimes mapで管理して貪欲 ■E - Playlist dp[i]:=i分丁度に新しい曲が始まる確率 ■F - Push and Carry 丁寧に実装。遠回りするパターンに注意 ■G - Inversio…

ABC322

■A - First ABC 2 std::string::find ■B - Prefix and Suffix std::string:substr ■C - Festival 適当に ■D - Polyomino ラムダ式で->boolとしているのに何も返さない関数を書いたらREが無限に出た。 どうしようもない。 向きfix(4^3)。場所fix(16^3)して判…

ABC321

■A - 321-like Checker stringで受け取る ■B - Cutoff 全探索 ■C - 321-like Searcher 再帰 ■D - Set Menu upper_bound ■E - Complete Binary Tree なんか事故ってた 丁寧に書くと通る n個登ったとこからm個下がった頂点の数が分かればいい ■F - #(subset su…