AtCoder Beginner Contest 296 D問題 M<=ab
問題
提出解答
問題の概要
次の条件を満たす整数 は存在するか? 存在するならば, そのような のうちの最小値を求めよ.
- 以上 以下の整数 が存在して, である.
制約
解法
まず, 存在性について, 以下が成り立つ.
条件を満たすような整数 が存在することと, であることは同値である.
(証明)
- のとき, とすれば, であり, である.
- 条件を満たすような整数 に対して, であったとする. このとき, より, である. よって, でもあったので, となる.
これ以降では存在性は仮定する. つまり, を仮定する.
ここで, 対称性から の追加条件を課してもよいことがわかる. そして, このとき, 最小値 に対して とすると, を満たす. 実際, とすると,
となり, より小さい整数が条件を満たすことがわかる.
をある 以下の正の整数に固定する. このとき, としては であるから, は を満たす条件下ではなるべく小さくしたい. これは のときに実現可能で, が最適である.
よって, 求めるべきは
である.