ABC162バチャ参戦
ABC162のバーチャル参加をしました。今回試験的に雑な脳内実況復元をしようと思います。ちなみに結果はABCDFが解けて1600点、Eもその10分後ぐらいに解けました。青さん?
A - Lucky 7
- 各位の数字がわかればいい
- %10で1の位を求める->/10をして1の位を「消す」(325->32みたいな)を3回すればOK
atcoder.jp
B - FizzBuzz Sum
- 問題読んでもよく分からなかったが例見たらわかった
- 3,5,15で割り切れると数字じゃなくなるので、3でも5でも割り切れない数を足せばおk
atcoder.jp
C - Sum of gcd of Tuples (Easy)
- シグマの3重入れ子、添え字の範囲は1~200、3乗しても8×106
なら愚直にやってもいけるやろ(適当)
atcoder.jp
D - RGB Triplets
- つまりはの入れ替えね
- とりあえず1番目の条件を満たすの組の数は
(の数)×(の数)×(の数)でいいのかな...あー、<<の条件にひっかかる組を数えそうで怖いな(editorialの言う通り、冷静に考えるとこれで合ってた) - 「のうち文字の数」とすると、「ならば,はでもでもない文字 を足していく」をfor2重すれば求められる(O(N2)はセーフ)
- 二個目の条件は...を決めて「かつが相異なるが存在->answer--」をfor2重
atcoder.jp
F - Select Half
- editorialに書いてあるをO(N2)で求めないとだめか?
- ...と思ったが、下の5通りを考えれば十分
- よって「」と「」とを計算すれば求まる
atcoder.jp
延長戦: E - Sum of gcd of Tuples (Hard)
- 「すべての項のgcdの数列の集合」とおき、を足し合わせたい
- 「」は、「すべての項がで割れる数列の集合」から「すべての項がで割れ、かつgcdがでない数列集合(*)」を除いたもの
- (*)って何?...絶対この数列のgcdは2*g,3*g,...のはず(一般にがの公約数ならばはの倍数なので)、またgcdが2*g,3*g,...ならばに属する、
つまり - かつとに共通部はない!(ここまできてバチャが終わった)
- ということはでは
は単に累乗で求められるのでを後ろから求めていこう
atcoder.jp
Eみたいな問題慣れてないからちゃんとやらないとなあ...
来週こそはちゃんと時間通り出ます