АВТ
Language: Russian
English

Remote Training on Programming

Problems Online status Contests
News FAQ E-learning
For authors:
Register  ||  Login
 
Hello, Guest! Please login or register.

22. Partial Defragmentation

Time Limit: 2 seconds
Memory Limit:65536KB
Points:100
View Problem Statistics Submit Problem added debug

Оперативная память компьютера имеет объём V байт, пронумерованных от 0 до V-1. Выделенные блоки памяти задаются последовательностью адресов (a1, b1), (a2, b2), ... (aN, bN). Блоки отсортированы по адресам и не перекрываются, т. е. 0 <= ai <= bi < ai + 1 < V. Операционная система пытается выделить память под ещё один блок объёмом M байт. Если свободное пространство такого размера отсутствует, она может попытаться переместить какой-нибудь один из блоков, чтобы освободить непрерывный участок нужной длины. Требуется выбрать для перемещения блок наименьшей длины. Если таких вариантов несколько, следует выбрать блок с наименьшим начальным адресом.

Ограничения: 0 <= N <= 100000, 1 <= V <= 1073741824

Input

Во входном файле расположены целые числа V N M. Далее идут N пар чисел ai bi.

Output

Выходной файл должен содержать единственное целое число:
* номер блока, который нужно перемещать;
* 0, если блоки перемещать не нужно (непрерывный участок нужного объёма есть сразу);
* -1, если решения нет (пространство нужного объёма освободить не удаётся).

Sample

InputOutput
10 2 4
1 5 7 7
2

View Problem Statistics Submit Problem discussion Author/source:
Problems from Contests and Camps / Trainings of Vologda SU / First Collegiate /
21. B - ASCII in Cube 22. 23. D - Ant and Tree 24. E - One-Line Editor 25. F - Fence in the Park
time generating 0.234 sec.
© Copyright VSU, AVT, Nosov D.A., Andrianov I.A.