Codeforces Round 918 (Div. 4) Eに時間がかかった。けど、普通にFGより解かれているねぇ。
— titia (@titia_til) December 28, 2023
D 後ろから見る。
E 偶奇ごとに累積和(S0,S1)をとる。S0[i]-S1[i]の値がそれ以前に現れていればYES
F [a,b]と[c,d]が交わるのは、a<cとすると、d<bのとき。第一要素を降順にみてBITで処理。
G ダイクストラ
2023年12月30日土曜日
Codeforces Round 918 (Div. 4)
2023年12月28日木曜日
RECRUIT 日本橋ハーフマラソン 2024冬(AtCoder Heuristic Contest 029)
RECRUIT 日本橋ハーフマラソン 2024冬(AtCoder Heuristic Contest 029)
— titia (@titia_til) December 26, 2023
これ、という方針を思い付けなかったので評価値ゲーに賭けた。持っている手札の組み合わせで余りが少なくこなせそうなプロジェクト&手札を高評価にした。カード選択のときは、そこにprice分をマイナスした評価値にする。
こう書いたけど提出して正解だったらしい。
— titia (@titia_til) December 27, 2023
ラスト前の提出(延長戦に提出してみたらpretest60位相当)をシステムテストのseedで実行して計算したところ、107101340635点で100位相当でした。
そのままだったら60位→100位で40位も落ちてたって何。 https://t.co/fTIu1a1EVo
え!
— titia (@titia_til) December 27, 2023
順位は95位とかなんだけど、これで提出したらベストが二つあったらしい。
input0541で19902点(実際のベストは16814点)
input0866で89945点(実際のベストは88408点)
100位あたりでベストを取っている人少ないから、こっちにした方がちょっとお得(?)だったなー。
2023年12月24日日曜日
Pinely Round 3 (Div. 1 + Div. 2)
Pinely Round 3 (Div. 1 + Div. 2) 二時間半あってDが解けなかった。こういう整数問題は苦手じゃないつもりだったんだけど……。
— titia (@titia_til) December 23, 2023
A x>0,x<0,y>0,y<0があるか調べる。
B 2ベキだけ考えればよい。
C 大きいLからできるだけ小さいRに貪欲に組み合わせる。
D. Split Plus K
2023年12月21日木曜日
Codeforces Round 916 (Div. 3)
Codeforces Round 916 (Div. 3)
— titia (@titia_til) December 19, 2023
A Counter
B 大きい数を昇順→小さい数を降順
C 累積和
D 上位三個を全探索
E A[i]+B[i]が大きい方から使う
F 子孫の個数が多い枝を調べる
G1 グラフを作ってSCC
G2. Light Bulbs (Hard Version)
2023年12月20日水曜日
AtCoder Grand Contest 065
AtCoder Grand Contest 065 A一完でした。
— titia (@titia_til) December 17, 2023
A startの数を決めたら、残っているそれより小さい数へ(最も小さいときは最大のものへ)遷移するのが最適。また、たくさん個数があるものは先に使いたい。そのうちどれを最初に使うべきかは、その個数あるもの同士の隣接差から決定できる。
B - Erase and Insert
C - Avoid Half Sum
2023年12月17日日曜日
トヨタ自動車プログラミングコンテスト2023#8(AtCoder Beginner Contest 333)
トヨタ自動車プログラミングコンテスト2023#8(AtCoder Beginner Contest 333) Fで三乗DPしか思いつかずひどいことに。
— titia (@titia_til) December 16, 2023
C 全部列挙
D 木DP
E 後ろから見る。
F N-1での答えに、x=2^N-1として、1/x,2/x,4/x,...みたいなのを掛けて足すとNでの答になる。高速化が思いつかず埋め込みしようとかして破滅。
F - Bomb Game 2
G - Nearest Fraction
2023年12月13日水曜日
Kotlin Heroes: Episode 9 (Unrated, T-Shirts + Prizes!)
E A[i]>B[i]にしておく。A内の[:i]までの部分列の和のmaxは累積和とそこまでの最小値を使えば求まる。答えは、Aのmax+Bのmaxか、A[:i]のmax+A[i:]のmax
— titia (@titia_til) December 11, 2023
F 各辺の寄与を求める。寄与をソートして大きい方を*1にして良い。
H. Sum of Digits of Sums
HACK TO THE FUTURE 2024 (AtCoder Heuristic Contest 027)
HACK TO THE FUTURE 2024 (AtCoder Heuristic Contest 027)
— titia (@titia_til) December 10, 2023
・序盤は、「各マスを何ターンごとに訪れるのが最適かは二分探索で分かる」というのを利用しようとしていたが上手くいかず断念。
AtCoder Beginner Contest 332
AtCoder Beginner Contest 332
— titia (@titia_til) December 10, 2023
C "0"で分ける。
D bfs
E N*3^NのDP。PyPyじゃTLEでRUSTに直した。
F (a,b)と(c,d)→(a*c,b*c+d) を遅延セグ木に乗せる。ずっと双対セグ木でいけると思い、いけないと気付くまで時間かかってしまった。
F - Random Update Query
estie プログラミングコンテスト2023 (AtCoder Regular Contest 169)
estie プログラミングコンテスト2023 (AtCoder Regular Contest 169) AB二完でダメ。
— titia (@titia_til) December 9, 2023
A 二項係数で寄与を表せる。
B 尺取りで和Sでどこまでいけるか求めた後DP。尺取りをバグらせた。
C DPは無理そうだから、包除原理かと思ったが、解説見たら違ったみたい。
C - Not So Consecutive
D - Add to Make a Permutation
2023年11月25日土曜日
yukicoder contest 413
No.2542 Yokan for Two
No.2543 Many Meetings
2023年11月24日金曜日
AtCoder Regular Contest 167
AtCoder Regular Contest 167 二完遅解きです。
— titia (@titia_til) October 15, 2023
A 一枚の皿に乗せるのは美味しいもの。二枚の皿には美味しいものと不味いものをペアに。
B 素因数分解すれば答えは分かる。……が、答えが「xを2で割った切り捨て」の形になり、xが奇数になる条件が分からず困った。(多分、嘘を通したと思う)
C - MST on Line++
2023年11月21日火曜日
ALGO ARTIS プログラミングコンテスト2023 秋 (AtCoder Regular Contest 168)
ALGO ARTIS プログラミングコンテスト2023 秋 (AtCoder Regular Contest 168) Bまで。
— titia (@titia_til) November 19, 2023
A 各">"*nについて考えればOK。
B 総xorが0でないときは-1。あとは、k+1で割った余りのxorを考える。
C 交換するAの位置を決め、そこと交換するB or Cを決め、残りのB/Cの交換を行う、とやったが答えが合わない。
C - Swap Characters
D - Maximize Update
2023年11月12日日曜日
トヨタ自動車プログラミングコンテスト2023#7(AtCoder Beginner Contest 328)
トヨタ自動車プログラミングコンテスト2023#7(AtCoder Beginner Contest 328) Fまで六完。
— titia (@titia_til) November 11, 2023
C 累積和
D stack
E bit DPみたいに連結な集合がSのときの重みを全てもった
F 重み付きUnion-find
G 制約がbitDPだがbit DPじゃ上手くいかなそう→やっぱりbit DPぽいと気付いたがWA
G - Cut and Reorder
2023年11月11日土曜日
yukicoder contest 412
No.2535 多重同値
No.2536 同値性と充足可能性
No.2537 多重含意
2023年11月6日月曜日
トヨタ自動車プログラミングコンテスト2023#6(AtCoder Heuristic Contest 026)
トヨタ自動車プログラミングコンテスト2023#6(AtCoder Heuristic Contest 026)
— titia (@titia_til) November 5, 2023
・一番小さい値を探すB[x][y]とする
・B[x][y+1:]で最も小さい値を探し、さらに……とし、それらの一つ上からを取り除き、他の列のうち、最小値の値が最も大きい場所へうつす。
この繰り返しで答えを構築し、焼きなまし
これ、continueとすべきところ二か所がreturnになっていたのが原因でした。何故……。
— titia (@titia_til) November 5, 2023
それを提出しても7点しか上がらなかった(順位変わらず)ので、RUSTに書き換えたら上がるかも、と思ったのが間違いですね。
もっと良い方針がないか考え直すべきでした。
AHC、焼きなましの確率の式が間違っていた(exp(deltaScore / temp)でなくexp(deltaScore) / tempにしていた)ことに気付き、直したら1401325点(本番27位相当)、PyPyのままでも1400088(33位相当)出た。
— titia (@titia_til) November 5, 2023
コピペすれば良いのになぜこんなミスを……。
本番中に14に乗せられたはずと思うと悔しいね。
2023年11月4日土曜日
yukicoder contest 411 オムニバスコンテスト
No.2529 Treasure Hunter
No.2530 Yellow Cards
No.2531 Coloring Vertices on Namori
No.2532 Want Play More
2023年10月29日日曜日
パナソニックグループ プログラミングコンテスト2023(AtCoder Beginner Contest 326)
パナソニックグループ プログラミングコンテスト2023(AtCoder Beginner Contest 326) Dを飛ばしてFまで。
— titia (@titia_til) October 28, 2023
B 全探索
C 尺取り
D Rの条件を満たすボードをdfsで列挙しようとしたが失敗
E 後ろからDP
F 偶奇に分けて半分全列挙。tupleをソートしたらTLEして困った。(結局dictを使ってAC)
D - ABC Puzzle
G - Unlock Achievement
2023年10月28日土曜日
yukicoder contest 410
No.2518 Adjacent Larger
No.2519 Coins in Array
No.2520 L1 Explosion
No.2521 Don't be Same
No.2522 Fall in love, Girls!
No.2523 Trick Flower
No.2524 Stripes
2023年10月25日水曜日
yukicoder contest 409
No.2509 Beam Shateki
No.2510 Six Cube Sum (Count)
No.2512 Mountain Sequences
2023年10月24日火曜日
AtCoder Heuristic Contest 025
ただ、これだと多くの場合間に合わないので、Step1を途中で切り上げたりStep2の二分探索を1回だけにしたりした。
— titia (@titia_til) October 22, 2023
Step2で二個ずつ加えるみたいなことも試したけれど、手元での0000~0050caseのスコア総和は改善するのだけど、提出すると点数も順位も下がるので諦めた。
キーエンスプログラミングコンテスト2023秋(AtCoder Beginner Contest 325)
キーエンスプログラミングコンテスト2023秋(AtCoder Beginner Contest 325) Fまで六完。Fまでは速かったのにGを解けず。
— titia (@titia_til) October 21, 2023
B 24個全探索
C DFS
D T順にソートしてT+Dをheapqに入れ小さい順に使う
E ダイクストラ
F 一個目のをx個使うとき、二個目のは最小何個で良いか、をDPする。
G - offence
2023年10月15日日曜日
yukicoder contest 408
No.2500 Products in a Range
No.2501 Maximum Inversion Number
2023年10月14日土曜日
Codeforces Round 903 (Div. 3)
F. Minimum Maximum Distance
2023年10月9日月曜日
AtCoder Regular Contest 166
AtCoder Regular Contest 166 Cまで。
— titia (@titia_til) October 8, 2023
A Y[i]=CならX[i]=Cでないとダメ。それ以外の場所は、AとBの個数を一致させつつ、右からCをBにしていく。全てのBの位置がXの方がY以降にあればOK。
B a,b,cとlcmについて何回やるか調べるとbit DPになる。
C 実験→oeisしました。
D - Interval Counts
2023年10月8日日曜日
Educational Codeforces Round 151 (Rated for Div. 2)
Educational Codeforces Round 151 (Rated for Div. 2) Dまで。
— titia (@titia_til) June 29, 2023
A x!=1のときを丁寧に場合分け
B 各座標を独立に。
C 部分列DPを使う。https://t.co/NeYvsecE9N
D 前後それぞれからどれだけ大きくできるか見る。ダメだと思いつつ三分探索してWAを出したのは反省。
E. Boxes and Balls
yukicoder contest 340
No.1909 Detect from Substrings
No.1910 High Element on Grid
2023年10月7日土曜日
Pinely Round 2 (Div. 1 + Div. 2)
D 同じ行にURが偶数個なくてはダメ。LRも同様。
— titia (@titia_til) August 30, 2023
E 後ろからDPして、各クエストを始点にしたらどれくらい時間がかかるかを求める。xに開始すればyに終わるというペアがたくさん得られるので、xでソートすれば、yの累積maxを使うことで、各[x,y]についてxから初めて全て終わらせるまでの時間が分かる。
F. Divide, XOR, and Conquer
yukicoder contest 407
No.2495 Three Sets
No.2496 LCM between Permutations
No.2497 GCD of LCMs
2023年10月5日木曜日
yukicoder contest 390
yukicoder contest 390 Eまで。
— titia (@titia_til) May 26, 2023
B x,yが独立
C Union-find
D DP
E Nの約数とか素因数分解は前計算しておく。約数でDP。x→yの遷移では、xとyがともに素数pで割れる数が一致するとき、その個数をかける。
No.2319 Friends+
2023年10月3日火曜日
yukicoder contest 391
No.2336 Do you like typical problems?
No.2337 Equidistant
2023年9月29日金曜日
Codeforces Round 899 (Div. 2)
Codeforces Round 899 (Div. 2) 全方位木DPの書き方が下手&高速化できないためDが解けず。
— titia (@titia_til) September 25, 2023
A 実際に作ってみた。
B k=1~50それぞれを使わない場合の全探索
C ある数を取ったらそれ以降の(正の)もの全てを取れる。
D 全方位木DP。部分木全てを0/1にするコストを持つ。他に部分木サイズが必要。
D. Tree XOR
2023年9月28日木曜日
Educational Codeforces Round 155 (Rated for Div. 2)
Educational Codeforces Round 155 (Rated for Div. 2) Dまで四完。EのWAが取れず。
— titia (@titia_til) September 24, 2023
B ある行/列の全てを選ぶのが最善
C 連続個数を数える。それぞれ何を残すか、その選び順は階乗。
D bitごとに。差分計算を頑張る。
E 高々三色で良いと思うんだけど……。一色や二色にする判定がおかしいのかなぁ。
E. Interactive Game with Coloring
2023年9月26日火曜日
サントリープログラミングコンテスト2023(AtCoder Beginner Contest 321)
F 形式的ベキ級数だと思って「注文の多い高橋商店」の解説を見に行ったが、冷静になると普通にDPで解けた。焦り過ぎです。
— titia (@titia_til) September 23, 2023
G 3^Nのbit DPだと思ったが詰めきれず。
G - Electric Circuit
2023年9月23日土曜日
Codeforces Round 898 (Div. 4)
Codeforces Round 898 (Div. 4)
— titia (@titia_til) September 21, 2023
B 最小のものを+1
C 折り返してから計算
D 貪欲
E 二分探索。
F 尺取り。
G 最左、最右およびBとBに挟まれているAの個数を見る。一番少ないものは使わない。
H なもり。bとサイクルを結ぶ点を調べ、そこにbが先にたどりつけるか。
yukicoder contest 405 技術室奥プログラミングコンテスト#7 Day1
No.2480 Sequence Sum
No.2481 Shiritori
No.2482 Sandglasses
2023年9月22日金曜日
THIRD プログラミングコンテスト 2023 アルゴ(AtCoder Beginner Contest 318)
THIRD プログラミングコンテスト 2023 アルゴ(AtCoder Beginner Contest 318) Fまで六完。
— titia (@titia_til) September 2, 2023
D bitDP
E 同じ数字のindexを見て差分を考える。
F 場所tでの判定をすると、ダメか、同じ順番で[t-a,t-b]の範囲でOKかが分かる。Xi+Lj,Xi-Ljについてこの判定をしたら解けたが、よく考えると未証明だった。
G - Typical Path Problem
2023年9月21日木曜日
トヨタ自動車プログラミングコンテスト2023#5(AtCoder Beginner Contest 320)
E tatyamさんのSortedSetをお借りしてシミュレーション。
— titia (@titia_til) September 16, 2023
F スタートとゴールから順に駒を動かしていく。(行きの燃料, 帰りに最低必要な燃料)におけるお金を持つDP。最小値でDPテーブルを更新すべきところをそのまま更新するミスをして1ペナ+20分。このミスがなければ130位くらいでした。悲しい。
G - Slot Strategy 2 (Hard)
2023年9月20日水曜日
AtCoder Regular Contest 165
AtCoder Regular Contest 165 なんとか三完したけど、6ペナ。
— titia (@titia_til) September 17, 2023
A 素数のベキになっていたらダメ。
B 後ろの方のやつ二回判定すれば良い。どこを省略して良いか範囲最小値を取れるセグ木で判定。
C 二分探索してx以下のweightの辺だけ見たとき二部グラフにできるかを見る。また、X<=二歩の距離となる。
D - Substring Comparison
CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)
CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!) Dまで四完。Eが分からないし、すんなり解けた問題がCしかなくてひどい。
— titia (@titia_til) September 18, 2023
A 0,1,...,k-1まで並べて、その後、x=kならx-1を違うならxを並べる。最初、MEXをxorと誤読して時間を浪費。
E. Another MEX Problem
2023年9月16日土曜日
yukicoder contest 404
No.2462 七人カノン
No.2463 ストレートフラッシュ
2023年9月15日金曜日
AtCoder Beginner Contest 319
F - Fighter Takahashi
G - Counting Shortest Paths
2023年9月3日日曜日
yukicoder contest 403
No.2452 Incline
No.2454 Former < Latter
2023年9月2日土曜日
Educational Codeforces Round 154 (Rated for Div. 2)
Educational Codeforces Round 154 (Rated for Div. 2) Dまで。Eは実験してoeis見て首を傾げていた。
— titia (@titia_til) August 31, 2023
A 13と31
B 同じ場所に01があるか
C どこまでソートされているか/ソートされていない場所があるか を持つ
D どこから左を負にするか全探索。そこから左/右を負/正にしたときの回数を前計算。
E. Non-Intersecting Subpermutations
2023年9月1日金曜日
第四回日本最強プログラマー学生選手権-予選-(AtCoder Beginner Contest 313)
第四回日本最強プログラマー学生選手権-予選-(AtCoder Beginner Contest 313) Eまで。
— titia (@titia_til) August 5, 2023
C x=sum(A)/Nとすると、x-1とxにするか、xとx+1にするか
D xor基底。要素K個でN個の線形独立なものを作るのに苦戦した。
E A[i]は後何回で消えるか? を後ろからDP。
F - Flip Machines
G - Redistribution of Piles
2023年8月29日火曜日
Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2)
https://t.co/Irf6A7phAy Scholarship Contest 2023-2024 (Div. 1 + Div. 2) pretestはEまで
— titia (@titia_til) August 26, 2023
A 後ろから作る
B k%2で場合分け
C 最も大きい2ベキを引く
D 累積和を頑張るDP
E 最上位bitが同じとき、"I don't know"と言うと、最上位bitがない問題へ帰着される
F Moを疑っていたが、差分計算が分からず
F. Exotic Queries
2023年8月28日月曜日
ゲームフリーク Programming Contest 2023(AtCoder Beginner Contest 317)
ゲームフリーク Programming Contest 2023(AtCoder Beginner Contest 317) Eまで五完。
— titia (@titia_til) August 26, 2023
C bitDP
D ナップザック問題
E 実装。BFS。
G こういうのって焼き鈍しで解けるのでは?→TLE。冷静になればフローだよね、とこの問題https://t.co/W1Lqfx8rmw
の解説を読んでいたが解けずに終了。
F - Nim
G - Rearranging
yukicoder contest 402
No.2442 線形写像
No.2443 特殊線形群の標準表現
No.2444 一次変換と体積
No.2445 奇行列式
2023年8月26日土曜日
Codeforces Round 894 (Div. 3)
E i項目を使うなら、d*iのペナルティーがかかる。i項目までの大きい方m個をheapqで管理。
— titia (@titia_til) August 24, 2023
F 部分和DPを前計算した後、二分探索。
G sorted(A)の最大値+隣接項の差の最大値。tatyamさんのSortedMultisetをお借りした。(3712msなのでHackされそう)
F. Magic Will Save the World
2023年8月23日水曜日
Codeforces Round 892 (Div. 2)
Codeforces Round 892 (Div. 2) Dまで。
— titia (@titia_til) August 12, 2023
A 最大のものをCへ。
B 小さい方二つずつを見て、二つ目の和-二つ目のmin+一つ目のmin
C 後半いくつかを逆順に並べるのを試す
D bが大きい方から見て遅延セグ木でできそう→TLE→長いこと定数倍バトルした後普通のセグ木でできることに気付きAC。
E. Maximum Monogonosity
2023年8月22日火曜日
Codeforces Round 893 (Div. 2)
D. Trees and Segments
2023年8月21日月曜日
キーエンスプログラミングコンテスト2023夏(AtCoder Beginner Contest 315)
キーエンスプログラミングコンテスト2023夏(AtCoder Beginner Contest 315)Fまで。
— titia (@titia_til) August 19, 2023
D 行・列に含まれる文字の個数を管理。実装難。
E グラフを作る。必要な本だけで再度グラフを作る
F ペナルティの数をもってDP。ペナルティの数は最大50個見ればOK
G 拡張ユークリッドの互除法でやろうとしたがWA。
G - Ai + Bj + Ck = X (1 <= i, j, k <= N)
2023年8月13日日曜日
AtCoder Beginner Contest 314
AtCoder Beginner Contest 314 Fまで。
— titia (@titia_til) August 12, 2023
D t!=1については最後のクエリのみ採用
E 期待値DP。0に注意して計算
F 木を構築していく。合併させたら新しいノードを作る。各ノードに親ノードを作るときの勝率を書き込んでいき、親方向から累積和を取れば答え。
G - Amulets
さっきのABCのG、新ジャッジのsortedcontainersを使って通した。https://t.co/0641kZKgMt
— titia (@titia_til) August 12, 2023
tatyamさんのSortedSetをお借りしたらTLEして困ってたけど、tatyamさん自身が「N > 2e5 なら tatyam 木より速い」と書いていたのを思い出したので。
新ジャッジだとこういうことができるんですね! https://t.co/9UiEQopTfK
2023年8月12日土曜日
yukicoder contest 401
No.2411 Reverse Directions
No.2412 YOU Grow Bigger!
2023年8月9日水曜日
Codeforces Round 891 (Div. 3)
G Union-findで小さい重みのものからくっつけていく。くっつけるとき、その重みより大きい重みの辺ならそこに加えられる。
— titia (@titia_til) August 7, 2023
2023年8月7日月曜日
Codeforces Round 890 (Div. 2) supported by Constructor Institute
Codeforces Round 890 (Div. 2) supported by Constructor Institute Cが解けない……。
— titia (@titia_til) August 5, 2023
B 1を2に、他を1にした和がsum(A)以下ならOK。
C プラスする区間[i,j]を固定して、A[i]をどれだけ大きく出来るか二分探索したつもりだけどWA。
E1 各頂点について、子供たちを大体半分ずつに分ける。部分和問題。
C. To Become Max
2023年8月5日土曜日
yukicoder contest 400
yukicoder contest 400 Eが分からなかった。入次数-出次数以外だと連結成分数が影響するんだろうとは思ったんだけど、どう答えに影響するのか分からず。
— titia (@titia_til) August 4, 2023
No.2403 "Eight" Bridges of Königsberg
2023年8月4日金曜日
Codeforces Round 881 (Div. 3)
F1. Omsk Metro (simple version)
2023年8月3日木曜日
Educational Codeforces Round 152 (Rated for Div. 2)
Educational Codeforces Round 152 (Rated for Div. 2) Dまで。
— titia (@titia_til) July 27, 2023
B kで割った余りでソート。
C [l,r]を[l以後にある1,r以前にある0]とし、その個数を調べる。これが意味のない区間になったときは元の配列。
D 1と2を圧縮。2が含まれていれば2にする。そして、どの0を使うかは左から貪欲。
E. Max to the Right of Min
2023年8月2日水曜日
Codeforces Round 889 (Div. 1)
Codeforces Round 889 (Div. 1) A1とCの二完。
— titia (@titia_til) July 29, 2023
A1 大きい数を作ってそれで他を変えていく方針
B 二乗DPしか分からない! 二乗でも通るのかと投げてみたけどやっぱりTLE。
C A[i]がA[i+1]+xで消える確率を計算。折り返して場合の数を求めるのは覚えてたけど、細部が分からずカタラン数を復習した。
B. Earn or Unlock
2023年8月1日火曜日
AtCoder Grand Contest 063
AtCoder Grand Contest 063 AB二完。C分からない!
— titia (@titia_til) July 30, 2023
A Aliceはできるだけ前にあるBを、BobはAをつぶすのが最適。
B 後ろから見て、各数字がどの数字から来たかを見る。それを利用して、各1からどこまで生成可能か調べる。
C 差に注目して色々試したけど分からない。
C - Add Mod Operations
2023年7月30日日曜日
ユニークビジョンプログラミングコンテスト2023 夏 (AtCoder Beginner Contest 312)
ユニークビジョンプログラミングコンテスト2023 夏 (AtCoder Beginner Contest 312) ABCDFGの六完。
— titia (@titia_til) July 29, 2023
C 二分探索
D DP
E 断面図を考えるだけだと線分で接する場合があって混乱。分からなかった。
F T=1のものを何個使うか全探索
G 全方位木DPかと思ったが、子の個数さえ分かればOKだった。
E - Tangency of Cuboids
2023年7月29日土曜日
Codeforces Round 887 (Div. 1)
Codeforces Round 887 (Div. 1) pretestはBまで。
— titia (@titia_til) July 23, 2023
A 後ろから見る。その数字が何番目から来たかは二分探索で分かる。二分探索二回してlog二つついてるのが怖い
B sortすると、どこから負にしてどこから正にしたら良いか分かるので、そこから左右に埋めて行く。
C. Ina of the Mountain
yukicoder contest 399
No.2394 部分和乗総和
No.2395 区間二次変換一点取得
2023年7月28日金曜日
Codeforces Round 888 (Div. 3)
Codeforces Round 888 (Div. 3)
— titia (@titia_til) July 25, 2023
B 奇数偶数に分けてソート
C A[0]を前からk個、A[-1]を後ろからk個
D 差を取って場合分け
E x(達)からyが作れるとき、x→yの辺を引き、入次数0のものから順に決める
F 上の桁から同じもの同士をまとめる分割統治
G 並列二分探索で良いと思うけどTLEが取れず。
G. Vlad and the Mountains
2023年7月23日日曜日
トヨタ自動車プログラミングコンテスト2023#4(AtCoder Beginner Contest 311)
F あるマスが黒だとその下のマスも黒い。ので、列ごとに見ると「xマスより下が黒」という状態で表せる。これを状態としてDP。
— titia (@titia_til) July 22, 2023
G - One More Grid Task
Codeforces Round 886 (Div. 4)
Codeforces Round 886 (Div. 4)
— titia (@titia_til) July 21, 2023
D ソートする
E 計算すると二次方程式になる
F 計算量は調和級数
G x,y,x+y,x-yについてCounter
H 重み付きUnion-find
F. We Were Both Children
G. The Morning Star
2023年7月22日土曜日
yukicoder contest 398
No.2387 Yokan Factory
No.2390 Udon Coupon (Hard)
2023年7月18日火曜日
freee プログラミングコンテスト2023(AtCoder Beginner Contest 310)
freee プログラミングコンテスト2023(AtCoder Beginner Contest 310) D~
— titia (@titia_til) July 15, 2023
Fどれも苦戦したがFまで。
D 答えの最大値が小さそうなので雑にDFS書いたら間に合った。
E ランレングス圧縮してメモ化再帰で解いた。もっと簡単な方法がありそうだけど分からず。
F 今までに現れた和の種類2^10個をもってDP
G - Takahashi And Pass-The-Ball Game
Ex - Negative Cost
Codeforces Round 885 (Div. 2)
D 一の位が0や5以外なら、一の位は2→4→8→6→2→……の繰り返しになる。その間、sは+20、kは-4するので、大体(s+20x)*(k-4x)の最大値を求めれば良い。このxを(微分か平方完成かで)求めてその周囲を調べる。
— titia (@titia_til) July 16, 2023
A. Vika and Her Friends
2023年7月15日土曜日
yukicoder contest 397(群論コンテスト)
No.2381 Gift Exchange Party
No.2383 Naphthol
2023年7月3日月曜日
AtCoder Regular Contest 163
AtCoder Regular Contest 163 Cが分からず終了……。
— titia (@titia_til) July 2, 2023
A 全探索
B 尺取り法
C 「2 3 6」のそれぞれにxをかけると1/xが作れることを利用しようとしてもがいていた。解説の方法は全く思いつかなかったのでどうしようもない……。
C - Harmonic Mean
D - Sum of SCC
2023年7月1日土曜日
yukicoder contest 395
No.2366 登校
2023年6月28日水曜日
Codeforces Round 880 (Div. 1)
Codeforces Round 880 (Div. 1) Aしか分からなかった。
— titia (@titia_til) June 18, 2023
A aを全探索。
B mの制約が小さければできそうなのだが……。
C 鳩ノ巣原理を使うのかなーと考えていたけど、そこから考察が進まず。
B. Lottery
C. Twin Clusters
2023年6月26日月曜日
TOYOTA Programming Contest 2023 Summer(AtCoder Heuristic Contest 021)
ツイートを見ていたら同じ勘違いをしていた人が何人かいたけど、各数字が、0,1,2,..と並べたときと同じ段にならなくてはいけないと勘違いしていました。
— titia (@titia_til) June 25, 2023
コンテスト開始30分後あたり~終了まで。
それで132くらいは出ることも、勘違いを気付きにくくする原因になってしまった。
・大きい順に、経路のコスト(置きたい段との差をコスト)を求めるDPをしてコストが小さいものを採用、としました。
ただ、これは勘違いしていたせいです。ツイートを見ていたら同じ勘違いをしていた人が何人かいたけど、
東京海上日動プログラミングコンテスト2023(AtCoder Beginner Contest 307)
G x=sum(A)/Nとすると、各要素をxかx+1にしたい。x+1にした個数とかをもってDPかと思ったが上手くいかなかった。今までで使った最後のA[i]ももって雑にDPしたがWAが出た。
— titia (@titia_til) June 24, 2023
F - Virus 2
G - Approximate Equalization
2023年6月24日土曜日
yukicoder contest 394
yukicoder contest 394 ABの二完
— titia (@titia_til) June 23, 2023
A 何も分からず実験コードを書いた。
B 適当に書いたらTLE。(chatGPTさんにお願いして)RUSTに直して提出。
C imos法っぽくやったらTLEでした。heapq使ったのがまずそう。
No.2359 A in S ?
2023年6月19日月曜日
トヨタ自動車プログラミングコンテスト2023#3(AtCoder Beginner Contest 306)
F 座標圧縮して、小さい順に見て、どの集合の要素が現れたか? という出現回数をセグ木で管理する。
— titia (@titia_til) June 17, 2023
G 1に戻れる箇所の距離の差のgcdが2や5のみの倍数になれば良い? みたいなのを書いた。
G - Return to 1
2023年6月17日土曜日
yukicoder contest 393
No.2354 Poor Sight in Winter
No.2355 Unhappy Back Dance
No.2356 Back Door Tour in Four Seasons
2023年6月14日水曜日
東京海上日動プログラミングコンテスト2023(AtCoder Beginner Contest 304)
Ex - Constrained Topological Sort
Educational Codeforces Round 150 (Rated for Div. 2)
Educational Codeforces Round 150 (Rated for Div. 2) Dまで
— titia (@titia_til) June 12, 2023
A 5以上なら「1 1 ?」にすれば勝てる
B シミュレーション。Aより簡単。
C ある文字の最左・最右を変えてみる
D 貪欲。(l,r)をrでソートし、そこまででペアを作れるか。作れたら、rより左に左端があるものは捨てる。
E. Fill the Matrix
2023年6月12日月曜日
ALGO ARTIS プログラミングコンテスト2023(AtCoder Heuristic Contest 020)
……を、shuffleした頂点の順番に対して行う
— titia (@titia_til) June 11, 2023
この1と2を繰り返した。2.でビームサーチをしようとしたのだけど、スコアが上がらなかったので諦めて乱択した。
2023年6月11日日曜日
yukicoder contest 392
No.2343 (l+r)/2
No.2344 (l+r)^2
2023年6月8日木曜日
日鉄ソリューションズプログラミングコンテスト2023(AtCoder Beginner Contest 303)
日鉄ソリューションズプログラミングコンテスト2023(AtCoder Beginner Contest 303) Eまで。EXでケーリーの公式の証明を眺めたが分からず、Fの二分探索後の判定が上手くできず終了。
— titia (@titia_til) May 27, 2023
B setで管理
C シミュレーション
D DP
E まず次数3以上の頂点を除く
F - Damage over Time
自力AC。