草体にぼ日記

だらだらと

2020年6月9日 日記

2020年 6月 9日

まえがき

ネムイ…

健康管理

ネムをする

何した

悪いことはしてない。いやマジで。本当に、信じてくれよ!!

具体的に

にゃーん

今日解いた問題

AGC020 B- Ice Rink Game

  • [後ろから,最大と最小,操作]

a[i]人組を作る操作で、人数はa[i]倍数人になる。 a[i]人組を作る操作で,N人組になるとき、操作の前では(N/a[i]) * a[i] 人かな?
チョットムズカシイ(解説AC) 何書けばいいか分からないくらいにはわからないな。

ABC080 D- Recording

  • [実装,同じチャンネルはお得]

時刻1~100010ぐらいまでについて、テレビが始まる時間と終わる時間を保持、終わった瞬間同じchで別番組が始まる場合はソレも保持。

そうしてときました。

ABC106 D- AtCoder Express 2

  • [二次元累積和]

始めて二次元累積和の問題触りました。
良い言葉を書くには理解が浅すぎる。

ABC126 E- 1 or 2

  • [UnionFind,Disjoint-Set,コストの最小化,数式]

Zが何とか関係ないです。 A2 + A4 ≡ 0(mod2)って言われたら、A2が分かればA4も決まります。A4が分かればA2も分かります。
もう一つ A4 + A5 ≡ 1(mod2)って言われていたら、さっきの手順でA2,A4が分かっているのでA5も分かります。

魔法でA4を知ろうが,A2を知ろうが,A5を知ろうがコストは一緒です。A4が2つの式に含まれているからお得!なんてことはありません

集合が,{1,2,3} {4} {5,6,7,8}という3つ存在している時、答えは3
ちなみに、この集合は1が分かれば2も3も分かる(2が分かれば3も1も分かる)...みたいな感じナノが1つの集合にしたつもりです。
よって、UnionFindの島の数が答えになる。
UnionFindの島ってそもそもそんな言葉あるのか知らんけど。

おまけ x + a = k1
x + b = k2
x + c = k3
x + d = k4
x + e = k5
x + f = k6
x + g = k7
x + h = k8
っていう8本の式が与えられた時、(k1~k8は既知),a~hとxの値を求めてください。
ただし、a~h,xについて、あなたは値を1個あたりコスト1で知ることが出来ます。

xを聞くとa~hが全部(k(1~8) - (x))で求まる!!!だからxを聞くのが最適だ!!!

うん。たしかにそう。
でも、aを聞いてもx = k1 - a で求まる。
で、xが求まったから2本目から8本目の式でb~hが(k(2~8) - (x))で求められます。 だから、どれを聞いても結局a~hとxはコスト1でも止められるにゃ

ABC153 F- Silver Fox vs Monster

  • [疑似累積和,区間に対する操作,queue]

ハイ、でました。区間に対する操作。 i体目にギリギリ届くように落とした爆弾の効果が、i+何体目まで及ぶか。っていうのをqueueで扱えるようにしたのですね。

while(q.front().first < x) 

っていう書き方賢いですね。(q.front().firstは、効果が切れる時の座標、xは今見てるモンスターの座標)

AGC023 B- Find Symmetried

  • [計算量減らせ,線対称]

A,Bで成り立つ時,A+1,B+1についても成り立つ!!!!
(A,B)->(A+1,B+1)は全部右下(イメージ)に1個ずつずらすだけなので、対象であるかどうかには影響しない!!!
だからA=5, B=6 をみる変わりにA=0,B=1を見れば良い。(A=0とB=0~N-1を見てやればいい!!)

解説読んで解き方教えてもらって実装しました!!(これ自力は無理たぷにきあ君だった(ごめん))

あとがき

ねむちゃん…

ツイッターでブログ通知出したらアクセス数増えるの嬉しくてニヤニヤしてます。

Twitterはログアウトしてるけど、ブログを投げると「ツイッターに通知出しますか?」ってなるからそこから投稿してるよ〜

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)