https://atcoder.jp/contests/jsc2021/tasks/jsc2021_a
解説
https://atcoder.jp/contests/jsc2021/submissions/21830396
1gあたりの価格が安くなるようにすればいいので、式としては
ans / Z < Y / X
が満たれればいい。
変形すると、
ans < ZY / X
となる。
よって、答えは大体ZY/Xとなる。
そのまま書くとC++では整数計算すると切り捨てとなるため、真に小さいというのを満たしてくれる。
だが、ZYがXで割り切れてしまう場合は<ではなく等しくなってしまうので、その場合だけ1円安くしておこう。
int X, Y, Z; //--------------------------------------------------------------------------------------------------- void _main() { cin >> X >> Y >> Z; // // ans < Z * Y / X int ans = Z * Y / X; if ((Z * Y) % X == 0) ans--; cout << ans << endl; }