Ниже решение с пояснениями.
Даны:
- скорость пловца относительно воды v = 5 км/ч
- скорость течения реки u = 3 км/ч
Цель: переплыть реку по кратчайшему пути, то есть попасть на точку напротив по прямой, перпендикулярной берегам. Чтобы это получилось, направление плавания относительно воды нужно выбрать так, чтобы дрейф течения компенсировался, и итоговый путь был вертикальным (перпендикулярно берегам).
Пусть swimmer направляется под углом θ к направлению поперёк реки (направление против течения — вверх по ветру). Тогда скорости по направлениям:
- поперёк берегов (верх вниз): v_y = v cos θ
- вдоль течения (поперёк берега влево-вправо): v_x = v sin θ
С учетом течения скорость относительно берега становится вектором:
(u + v sin θ, v cos θ)
Чтобы траектория была прямой перпендикулярно берегам, компонент вдоль течения должен быть нулём:
u + v sin θ = 0 → sin θ = -u/v = -3/5
Тогда cos θ = sqrt(1 - sin^2 θ) = sqrt(1 - (3/5)^2) = sqrt(16/25) = 4/5
Скорость пловца относительно берега по направлению поперёк (то, что нам и нужно) равна v cos θ = 5 × 4/5 = 4 км/ч.
Ответ: скорость относительно берега при таком ходе равна 4 км/ч.
Дополнительно: время CROSS для ширины реки W будет t = W / 4, если ширина известна.