こうきのブログ(仮)

AtCoder挑戦記 - ABC165

May 03, 2020

ふと思い立ったので、今回からAtCoderに参加するたびにその反省も込めて、このブログに記事を残していこうと思います。
割と三日坊主なところがあるので、頑張って続けていきたいですね。
早速結果から行きましょう。

今回の結果

結果はA, Bの2完でした。
すごく恥ずかしいですが画像も載せましょう。
結果 後で反省を書きます。
こういうときに載せる画像ってこれで合ってるんですかね。

そして、レートがこちら。
レート 一応、上がってはいますね。
まあまだ灰ですからね。
まだ伸びしろしかないですよ。

反省

B問題の複利

これは猛省しなければなりません。
オーバーフローで計算が終わらないのを、ずっと計算量が多くて終わらないんだと勘違いしてました。
それで、なんとか一発で出そうと、等比数列の公式とか引っ張り出して使ったんですよ。
こういうの。

b=a(r+1)nb=a(r+1)^n

今回求めたいのはこのnなので、変形して、

n=lnblnaln(1+r)n= \frac{\ln b-\ln a}{\ln(1+r)}

こんな感じですよね。(合ってるかな、、) これで一発で答えが出る!って思ったんですけど、全然合わないんですよね。
それもそのはず、この問題は毎年小数点以下切り捨ての複利なので、誤差とかそういう次元じゃないです。

こんなことしなくても、そもそも計算量的には普通にループで余裕でした。
脳死でintとか使ってなければね。
long longにするだけで解決する問題でした。
大反省。

C問題 全探索

今回のC問題は、まず問題文の読解からつまずきましたね。
何言ってるのかわからん。
まあそれは落ち着いてよく読むしかないですね。

そして、ある程度理解したところで、「これは全探索だ!」とひらめきました。
とはいえ、今の僕の全探索の引き出しは二部探索しかありませんでした。
使えんやん。
もうね、シンプルに、もっと勉強しようねって。
そして、さっきのB問題のせいで時間もなかったので、どうしようもなかったですね。

終わってから、twitterとか解説放送とか見て、dfsっていうのを使うんだって知りました。
dfsって深さ優先探索のことなんですね。
これは大学の講義の中で聞いたことありました。
とりあえずはひたすら行けるとこまで行くってやつですね。
ただこれの実装は知らなかったので、今後の課題というやつです。

まとめ

ほんとにただの日記になってしまった。
まあとりあえずこんな感じでゆるくやっていこうと思います。
今後の成長にご期待下さい。


こうき

Written by こうき
WordPress開発でご飯を食べてます。大学生。
Twitter