ABC165 D - Floor Function
問題原文
解法
ならば右側が必ず0になるので、 には取りうる一番大きい数である を入れるのが最適。
そうでない時、 左側は をかけてる効果を最大に活かしたくて、右側は値が変わるギリギリに押さえ込みたい 気持ちになるので、 を入れるのが良さそうということがわかる。
一応 を何個か試して答えが変わらないことを確認しておわり!
実装
A, B, N = map(int, input().split()) def calc(x): return ((A * x) // B) - A * (x // B) if N < B: print(calc(N)) else: print(calc(B - 1))
感想
Cの倍以上解かれていてみんな数式につえ〜って思ってました