У фермера Джона є наступні варіанти пересування гною:
Напряму від до , буде пройдено відстань ;
Везти на тракторі від до , телепортувати від до , і знову везти на тракторі від до . Сумарно трактором буде пройдено відстань |a - x| + |b - y|;
Везти на тракторі від до , телепортувати від до , і знову везти на тракторі від до . Сумарно трактором буде пройдено відстань |a - y| + |b - x|;
Найменше з цих трьох значень і буде відповіддю.
Приклад
У наведеному прикладі найкраща стратегія — перемістити гній з позиції у позицію , телепортувати його у позицію , а потім перемістити в позицію . Загальна відстань, яку проїде трактор, складе 1 + 2 = 3.
Реалізація алгоритму
Читаємо вхідні дані.
scanf("%d %d %d %d", &a, &b, &x, &y);Обчислюємо відповідь — мінімум серед трьох значень.
res = abs(a - b);
res = min(res, abs(a - x) + abs(b - y));
res = min(res, abs(a - y) + abs(b - x));Виводимо відповідь.
printf("%d\n", res);Python реалізація
Читаємо вхідні дані.
a, b, x, y = map(int, input().split())Обчислюємо відповідь — мінімум серед трьох значень.
res = abs(a - b)
res = min(res, abs(a - x) + abs(b - y))
res = min(res, abs(a - y) + abs(b - x))Виводимо відповідь.
print(res)