Поиск

Ремонт дороги


Ограничение времени 1 секунда
Ограничение памяти 256Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt

Мальчик Лёша, ученик 3го курса, очень хотел много денег, и поэтому вместо того, чтобы делать домашнее задание в университете, он много работал. Но вот его отчислили, и у него появилось ещё больше свободного времени! Он узнал у своего друга о том, что очень много зарабатывают строители, но так как у Лёши не было высшего образования, ему предложили работу укладчика дороги. Лёша выложил часть дороги, начиная с указателя на A-й километр до указателя на B-й километр. Затем Лёша взял новый грузовик с щебнем и выложил ещё часть дороги, начиная с указателя на C-й километр до указателя на D-й километр, при этом часть дороги могла быть покрыта дважды (так как у мальчика нет высшего образования, то его начальник мог заставить переделать какой-то из участков дороги). Кроме того Лёша мог выкладывать дорогу как справа налево, так и слева направо — свобода выбора.

Напишите программу, вычисляющую общую длину уложенной дороги.

Формат ввода

Первая строка ввода содержит четыре натуральных числа A,B,C и D, разделенных пробелами (1 A,B,C,D 109) — номера километров дороги, которую укладывал Лёша.

Формат вывода

Вывести одно целое число — общую длину уложенной дороги.

Пример 1

Ввод Вывод
1 2 6 4
 
3
 

Пример 2

Ввод Вывод
1 6 2 4
 
5
 
Tutorials

Сначала нужно поменять границы, так чтобы первая граница диапазона была меньше или равна второй границе. Затем находим длину пересечения диапазонов и вычисляем результат как сумма длин диапазонов минус длина пересечения.


Для отправки решения задачи необходимо авторизоваться!