Trong bài toán này, chúng ta được cho hai số nguyên cho biết lợi thế xuất phát mà A cho B và C tương ứng trong một cuộc đua 100 mét. Nhiệm vụ của chúng ta là tạo một chương trình để tìm lợi thế xuất phát trong cuộc đua trong C++.
Mô tả mã − Ở đây, có các lợi thế xuất phát được cho bởi A cho B và A cho C tương ứng trong một cuộc đua 100 mét. Chúng ta cần tìm lợi thế xuất phát tương đối mà B cho C trong cuộc đua 100 mét.
Hãy xem một ví dụ để hiểu bài toán:
Đầu vào
20, 28
Đầu ra
90
Giải thích
A cho B lợi thế 15 mét, nghĩa là nếu A chạy hết 100m thì B chạy được 80m.
A cho C lợi thế 28 mét, nghĩa là nếu A chạy hết 100m thì C chạy được 72m.
Bây giờ, khi B chạy 80 mét, C chạy 72 mét.
Nếu B chạy 100 mét, C sẽ chạy
(72 * 100) / 80 = 90
Phương pháp giải quyết
Để giải bài toán, tìm quãng đường mà B và C hoàn thành khi A chạy xong 100 mét. Sau đó tính quãng đường C hoàn thành khi B chạy 100 mét, sử dụng công thức −
(C * 100) / B
Chương trình minh họa cho hoạt động của giải pháp:
Ví dụ
#include <iostream> using namespace std; int CalcHeadStart(int B, int C) { return ( 100 - ( ( (100 - C)*100 ) / (100 - B)) ) ; } int main() { int B = 12, C = 34; cout << "Head start in a race by B to C is " << CalcHeadStart(B, C) << " meters"; return 0; } Đầu ra
Head start in a race by B to C is 25 meters