AtCoder Beginner Contest 169
ABCDEの5完。Decimalに関する知識がそこそこあったので簡単に感じた(けどBC出せてないのにF出してる人が結構いて意味わかんなかった)
A - Multiplication 1
多分Aの中で一番簡単だと思う。掛けるだけ。
B - Multiplication 2
制約が大きすぎるので普通にLongで書けていくだけでもオーバーフローして死ぬ。Java/KotlinならBigDecimalを使っても普通に間に合う速度なので使う。他の言語だとTLEしたりするらしい。
C - Multiplication 3
うっかりBをDoubleとかで受け取ってしまうと小数点以下の誤差で死ぬ。これもkotlinならBigDecimalで受け止めるだけ。
切り捨てはRoundingModeで。
D - Div Game
問題文がややこしいが、素因数分解をして各素数pに対してp^1, p^2,p^3,....で割れるかをそれぞれ試していけばいい。素因数分解がO(√n)なことがわかっていれば間に合うこともわかる。
E - Count Median
AtCoderで時々ある見通しはすぐ立つけど証明が難しい系の問題。全部Aのときの中央値と全部Bのときの中央値の間はすべて取れることがわかればほぼAC。Nが偶数の時はx.5をカウントする必要があるので最初からAとBを2倍しておくといい。
F - Knapsack for All Subsets
とりあえず立てた見通しだとTLE解らしかった。DPの亜種だけど苦手すぎるのでダメ。