Trong bài toán này, cho hai giá trị S và N biểu diễn tốc độ dòng nước (km/h) và tỷ lệ thời gian lên/xuống dòng. Nhiệm vụ là tìm tốc độ người chèo từ tốc độ dòng nước và tỷ lệ thời gian.
Ví dụ minh họa:
Đầu vào
S = 5, N = 2
Đầu ra
15
Phương pháp giải
Giải pháp đơn giản dùng công thức toán học cho bài toán chèo thuyền:
Tốc độ người = x km/h Tốc độ dòng = S km/h Tốc độ xuống dòng = (x+S) km/h Tốc độ lên dòng = (x-S) km/h Thời gian xuống dòng = T Thời gian lên dòng = n*T Quãng đường lên = (x - S)*n*T Quãng đường xuống = (x + S)*T Vì quãng đường bằng nhau: (x + S) * T = (x - S)*n*T x + S = nx - nS S + nS = nx - x S*(n + 1) = x(n - 1)
$$x=\frac{S*(n+1)}{(n-1)}$$
Chương trình minh họa:
Ví dụ
#include <iostream>
using namespace std;
float calcManSpeed(float S, int n) {
return ( S * (n + 1) / (n - 1) );
}
int main() {
float S = 12;
int n = 3;
cout<<"The speed of man is "<<calcManSpeed(S, n)<<" km/hr";
return 0;
}Kết quả
The speed of man is 24 km/hr