eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Об`єднання інтервалів

Об`єднання інтервалів

Для заданого списку цілих чисел вам потрібно знайти n-те число у списку, коли всі числа відсортовані за неспаданням (нумерація індексів починається з 0). Числа будуть задані інтервалами. Кожен інтервал буде заданий двома числами, які вказують верхню і нижню межу інтервалу (межі також потрібно включати у проміжок).

Наприклад, інтервали [1, 3] і [5, 7] задають список чисел {1, 2, 3, 5, 6, 7}. Число може бути представлене більш як у одному інтервалі: наприклад, інтервали [1, 4] і [3, 5] задають собою список чисел {1, 2, 3, 3, 4, 4, 5}.

Вхідні дані

У першому рядку задано кількість інтервалів p (1p50), у наступних двох рядках задано по p чисел у кожному: lowerBound і upperBound - нижня і верхня межа інтервалу, відомо що lowerBoundupperbound i -2 * 109lowerBound, upperBound2 * 109.

В останньому рядку задано число n (0n2 * 109). Вхідні дані коректні, n-ий елемент завжди існує.

Вихідні дані

Виведіть n-те число у списку, коли всі числа відсортовані за не спаданням.

Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
2
1 5
3 7
4
Вихідні дані #1
6

Пояснення: Числами із заданих інтервалів [1, 3], [5, 7] будуть: 1, 2, 3, 5, 6 і 7. Четвертим є 6, оскільки індекси за умовою нумеруються з нуля.