人工知能と競プロやってくブログ

深層学習・機械学習・AI・atcoder・競技プログラミングについて調べてやってみたことをまとめるブログです

AtCoder Beginner Contest 165 [ D - Floor Function ]をPythonで解く(400点、🟫茶diff)

問題

atcoder.jp

解法

計算式を関数に実装し、試しに数値を入れてみて答えに規則性があるかどうかを見てみる。
すると、mod Bでループしていることがわかる。
よって、最大値の候補はx = Nかx = B-1。

それぞれの値の答えを求めて比較。
答えとする。
B-1 <=Nかどうかは、チェックする。

実装

参考

blog.hamayanhamayan.com

xを[0,N]に動かして何か発見が無いか探してみる。
すると、計算式の値はmod Bで周期性があるみたいだ。