一汁三菜

自分が楽しいと思うこと、マラソン、旅行、その他日々の記録をしたい。

AtCodet Beginner Contest 286

A問題

地味に面倒だった。普段A問題は1分くらいあればAC出来るけれども、3分以上かかった。

B問題

replace()した。A問題より簡単。

C問題

N回シフトしながら、回文化するのに必要な文字数を計算してN回分のコストを全て求めて最小を求める。
初見では方針が定まらなかった。

D問題

何度も見たことのある動的計画法の問題。といいつつ最初は深さ優先探索で行けないかなと考えてた。
初見ではパスしてE問題に行った。

E問題

ワーシャルフロイド法で全都市間の距離+お土産のコストを計算しておいて、クエリに答える。最初PyPy3でTLEしてしまって、慌ててC++で実装し直した。どうやら初期値としてfloat('inf')を埋めておくと遅くなるので1 << 60とかにしておくべきというブラックノウハウがあるらしい。実際それでACするようになった。