Official

B - 蒸気圧/Vapor Pressure Editorial by mechanicalpenciI


もし \(A\leq B\times C\) であれば、高橋君はボールを取り除くことはなく、答えは \(\frac{A}{B}\) となります。
一方で、 \(A> B\times C\) であった場合、風船の数は変化しないので高橋君はボールを \(B\times C\) 個になるまで取り除きます。よってこの場合の答えは \(\frac{B\times C}{B}=C\) となります。
これでこの問題を解く事が出来ました。 割り算を一度するだけですので、精度についても仮数部が \(20\) bit 程度以上あれば問題ありません。

C++による実装例:

#include <bits/stdc++.h>
 
using namespace std;
 
int main() {
	double a, b, c;
 
	cin >> a >> b >> c;
 
	if (a <= (b*c)) cout << (a / b) << endl;
	else cout << c << endl;
 
	return 0;
}

Pythonによる実装例:

a, b, c = map(int, input().split())

if a <= (b*c): print(a/b)
else: print(c)

posted:
last update: