10447: Мінімальне покриття відрізками


Відправити розв'язок

Бали: 100 (partial)
Time limit: 5.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
Brain****, C++, Java, Pascal, Python, v8js

На прямій задана \(N\) відрізків. Виберіть з цієї множини відрізків мінімально можливий набір відрізків який повністю покриває відрізок \([0,M]\)

Формат вхідних даних

В першому рядку число \(M\)
В кожному з наступних рядків містяться координати відрізка \(L,R\) (\(-50000 \le L< R \le 5000\))
Список завершується парою нулів. Загальна кількість відрізків не перевищує 100000.

Формат вихідних даних

В першому рядку виведіть мінімальну кількість відрізків потрібних для покриття відрізка \([0,M]\)
В наступних рядках виведіть координати необхідних відрізків.
Якщо покриття неможливе - виведіть No solution

Приклад вхідних даних-1

1
-1 0
-5 -3
2 5
0 0

Приклад вихідних даних-1

No solution

Приклад вхідних даних-2

1
-1 0
0 1
0 0

Приклад вихідних даних-2

1
0 1

Коментарі

Ще немає коментарів.