아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Стенка на стенку

시간 제한2초메모리 제한1024 MB

요약
n명의 전사에게 k명의 적을 겹치지 않는 연속 구간으로 나눠 주되, 각 전사의 구간 길이가 a_i 이상 b_i 이하가 되도록 배정한다.
난이도

보통10점 중 6점

유형
그리디, 정렬, 구간
정답자
아직 제출이 없습니다

문제

Остап Бендер узнал, что в городе Санкт-Петербурге проходит турнир <<Cтенка на стенку>> с огромным призовым фондом. Все, что нужно для участия --- это собрать свою команду бойцов. Так как Остап не любит применять физическую силу, он решил стать генеральным менеджером команды <<Телёнок>>. Бендер собрал лучших бойцов для своей команды. И придумал стратегию, которая должна привести к победе: каждый член команды должен взять на себя какой-то сплошной отрезок противников и бить только их. Отрезки не должны пересекаться, чтобы бойцы случайно не побили друг друга.

Единственная проблема заключается в том, как распределить противников по бойцам. Известно, что все сильные бойцы довольно капризны. Каждый хочет прославиться, поэтому считает, что должен побить хотя бы a_ia\_i противников, но при этом каждый боец не всесильный и не может побить больше, чем b_ib\_i противников. Если кто-то из бойцов не будет доволен происходящим, он расстроится и уйдет из команды, что, очевидно, можно считать провалом. Ситуация, когда не каждого противника будет бить наш боец, тоже является провалом.

Помогите Остапу Бендеру распределить противников между своими бойцами таким образом, чтобы избежать провала, или сообщите, что провала не избежать.

입력

В самой первой строке заданы числа nn, kk (1≤n≤1051 \le n \le 10^5, 1≤k≤1091 \le k \le 10^9) --- количество бойцов из команды <<Телёнок>> и количество противников соответственно. В следующих nn строках даны пары чисел a_ia\_i и b_ib\_i (0≤a_i,b_i≤1090 \le a\_i, b\_i \le 10^9) --- характеристики бойца с номером ii.

출력

В первой строке выходного файла выведите строку <<FAIL>> без кавычек, если провала не избежать, иначе строку <<SUCCESS>>. В случае отсутсвия провала также выведите в выходной файл nn строк, в каждой из которых содержится пара чисел l_il\_i и r_ir\_i --- начало и конец отрезка, который берет на себя боец с номером ii.

예제2

  1. 예제 1

    입력
    2 5
    1 2
    2 3
    
    예상 출력
    SUCCESS
    1 2
    3 5
    
  2. 예제 2

    입력
    3 5
    1 2
    0 1
    0 1
    
    예상 출력
    FAIL