B 拡張ユークリッドの互除法を使うんじゃないの? 色々式を書いて頑張ったけど分からなかった。
— titia (@titia_til) April 24, 2022
C 右上と左下の要素を重ねながら、3*3の正方形を連ねていく。Bが無理だと思って焦ってたとき、Cのグラフを描いたらこれが見えて、助かった。
2022年4月25日月曜日
AtCoder Regular Contest 139
Codeforces Global Round 20
E 一行でできる列の長さを二分探索。それを基準に、x行にしたら答えを減らせるか? と見る。pretest1でデバッグしました。
— titia (@titia_til) April 23, 2022
F1 「1 1 1 2 3 4 5」なら「3 4 5 1 1 1 2」みたいにする。頻度が多い順にこれをやる。
H カッコ列みたいな累積和を取って、最大値-最小値かなー、と投げてみたけどWA on 5。
H. Zigu Zagu
2022年4月22日金曜日
Codeforces Round #784 (Div. 4)
G 尺取りでO(n*m)でいけると思うけど、O(n*n*m)を許す制約なので、列ごとにシミュレーションした
— titia (@titia_til) April 21, 2022
H i bitが立っている個数をC[i]とすると、そのbitを立てるコストはn-C[i]。大きいbitから貪欲に。
2022年4月19日火曜日
Codeforces Round #782 (Div. 2)
D. Reverse Sort Sum
2022年4月17日日曜日
2022 TCO Algo Round 1A
2022 TCO Algo Round 1A 全完13位。システムテスト通ってほっとした。
— titia (@titia_til) April 16, 2022
Easy 後ろのindexから順に見て、〇に大きい数字を、その後×に小さい数字を割り当て。
Mid Aの目が出る確率をPA、Bが出る確率をPBとすると、PA+PB*PAとPB*PBを比較する。PAとPBはDPで求める。
Hard ×のindexの積。Midより簡単では?
ユニークビジョンプログラミングコンテスト2022(AtCoder Beginner Contest 248)
A for文使わないと書くの面倒じゃない?
— titia (@titia_til) April 16, 2022
B シミュレーション
C DP
D 各値のindexの配列を持って二分探索
E 全ての辺を列挙
F - Keep Connect
G - GCD cost on the tree
2022年4月15日金曜日
AtCoder Regular Contest 137
D 初手実験。A=1,2,4,8,16,...で実験するとアダマール行列のようなものが出てくる。実装方法がよく分からなかったが、再帰で実装したらAC。
— titia (@titia_til) March 19, 2022
E フローと思ってずっとグラフをこねくり回していたが構築できず終了。結構時間残ってたのに。
E - Bakery
2022年4月12日火曜日
大和証券プログラミングコンテスト2022 Spring(AtCoder Regular Contest 138)
C 最大値が実現可能。大きい方からN/2個を+1他を-1として累積和を考える
— titia (@titia_til) April 9, 2022
D https://t.co/l2OtXL0oan を見に行き、そのコードを使って解こうとしたが3WAが取れず終了。
B - 01 Generation
D - Differ by K bits
2022年4月10日日曜日
Educational Codeforces Round 126 (Rated for Div. 2)
C max(H)かmax(H)+1にするのが最適(だと思ったけど、+10まで探索した)。+2を使うか+1を使うかは、最初+2の方へ割り振って置き、+2と+1の個数が同じくらいになるように(つまり、(+2の個数)-(+1の個数)の1/3くらいを)分配。
— titia (@titia_til) April 9, 2022
D 等差数列を累積和で実現するやつ。実装にずっと苦戦していた
2022年4月9日土曜日
Codeforces Round #781 (Div. 2)
Codeforces Round #781 (Div. 2)
— titia (@titia_til) April 8, 2022
A 1,n-3,1,1
B 個数が大きいものだけにしたい。一回コピーすると、個数を高々倍にできる。
C 同じ親のもの同士まとめる。答え二分探索。グループの個数が大きい方から割り振る
D 中国剰余定理を使う問題と気付くまで時間がかかったし、気付いた後も時間がかかった
yukicoder contest 338
No.1897 Sum of 2nd Max
2022年4月8日金曜日
AtCoder Beginner Contest 246
AtCoder Beginner Contest 246 Fまで六完。
— titia (@titia_til) April 2, 2022
B 三平方の定理
C ソートして大きい方からa/X枚クーポンを使う。その後、余りをソートして大きい方からクーポンを使う
D aを全探索し、bを二分探索
E BFS。ちゃんと枝狩りする
F 包除原理
G - Game on Tree 3
2022年4月7日木曜日
yukicoder contest 281
No.1374 Absolute Game
No.1375 Divide and Update
No.1378 Flattening
2022年4月1日金曜日
Codeforces Round #780 (Div. 3)
E 斜めに何個1があるかを見て一番多かったところを採用。差分計算。
— titia (@titia_til) March 31, 2022
F +なら+1、-なら-1していったスコアを計算。それまでに出現した「スコアが自分以上かつスコア%3が一致」するものが答え。