Олимпиадный тренинг

Задача . C. Сосчитайте треугольники


Как и у любого неизвестного математика, у Юрия есть любимые числа: \(A\), \(B\), \(C\) и \(D\), причем \(A \leq B \leq C \leq D\). Также Юрий очень любит треугольники, поэтому в один день он задумался: сколько существует невырожденных треугольников с целочисленными длинами сторон \(x\), \(y\) и \(z\) таких, что \(A \leq x \leq B \leq y \leq C \leq z \leq D\)?

Сейчас Юрий очень занят подготовкой задач для очередной олимпиады, поэтому он просит вас помочь посчитать количество интересующих его треугольников.

Треугольник называется невырожденным тогда и только тогда, когда его вершины не лежат на одной прямой.

Входные данные

В единственной строке через пробел записаны четыре целых числа \(A\), \(B\), \(C\) и \(D\) (\(1 \leq A \leq B \leq C \leq D \leq 5 \cdot 10^5\)) — любимые числа Юрия.

Выходные данные

Выведите одно число — количество невырожденных треугольников с целочисленными длинами сторон \(x\), \(y\) и \(z\), для которых выполнено неравенство: \(A \leq x \leq B \leq y \leq C \leq z \leq D\).

Примечание

В первом примере можно составить треугольники со следующими длинами сторон: \((1, 3, 3)\), \((2, 2, 3)\), \((2, 3, 3)\) и \((2, 3, 4)\).

Во втором примере можно составить треугольники: \((1, 2, 2)\), \((2, 2, 2)\) и \((2, 2, 3)\).

В третьем примере можно составить лишь один равносторонний треугольник. Длины всех сторон будут равны \(5 \cdot 10^5\).


Примеры
Входные данныеВыходные данные
1 1 2 3 4
4
2 1 2 2 5
3
3 500000 500000 500000 500000
1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя