метров и устал. В этот момент он обнаружил, что находится на расстоянии x
метров от одного из длинных бортиков (не обязательно от ближайшего) и y
метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик? Обратите внимание, что изначально неизвестно, какой из бортиков (длиной N
или M
метров) является коротким.
Входные данные
Вводятся 4
натуральных числа: N
, M
, x
, y
(N≠M)
, каждое на отдельной строке. Все числа не превосходят 100
.
Выходные данные
Программа должна вывести число метров, которое нужно проплыть Яше до бортика.
Вот это вот: n,m=m,n; делает совсем не то, что бы думаешь.
Это в Python или Go так можно значения поменять, а в С++ эта конструкция имеет абсолютно иной смысл.
Нам надо найти минимум 4 значений: x, y, длина_короткого_борта - x, длина_длинного_борта - y (до короткого борта плывём вдоль длинного, до длинного - вдоль короткого). #include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n, m, x, y;
cin >> n >> m >> x >> y;
cout << min({x, y, min(n, m) - x, max(n, m) - y});
}
#include <iostream>
using namespace std;
int main() {
int n, m, x, y;
cin >> n >> m >> x >> y;
auto a = n < m ? n : m;
auto b = m < n ? n : m;
auto bx = b - x < x ? b - x : x;
auto ay = a - y < y ? a - y : y;
auto target = bx < ay ? bx : ay;
cout << target << '\n';
}