Top
yukicoder No.604「誕生日のお小遣い」

年齢を決める二分法で解ける。

年齢を $x$ 歳と決めたときに
$\displaystyle \mathrm{floor}\left(\frac{x}{A}\right) \times B + x - \mathrm{floor}\left(\frac{x}{A}\right) \ge C$
かどうかを判定することになる。
この式を満たす最小の $x$ が答え。

$x, A, B, C$ は 60 ビットまで取り得るので、概算すると掛け算のところで 120 ビット程度まで行く可能性がある。
なので、ここが溢れないように何らかの手段で対応しないとダメ。unsigned な 64 ビットでも足りない。

(ΦωΦ)<おしまい