АВТ
Language:

Remote Training on Programming

Problems On-line status Contests FAQ
For authors:
Register  ||  Login
 
Hello, Guest! Login or register.

22. Partial Defragmentation

Time Limit: 2 seconds
Memory Limit:64000KB
Points:10
View Problem Statistics Submit Problem added Administrator

Оперативная память компьютера имеет объём 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 Author/source:
Problems from Contests / Trainings of Vologda STU / First Collegiate /
21. B - ASCII in Cube 22. 23. D - Ant and Tree 24. E - One-Line Editor 25. F - Fence in the Park
We can all benefit by doing occasional "toy" programs, when artificial restrictions are set up, so that we are forced to push our abilities to the limit. The art of tackling miniproblems with all our energy will sharpen our talents for the real problems. Donald E. Knuth.
time generating 0.484 sec.
© Copyright VSTU, AVT, Nosov D.A.