Разложение графа

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

요약
2n-1의 분할이 주어질 때 K_{2n}의 변을 주어진 차수의 인자들로 나누어 구성한다.
난이도

어려움10점 중 8점

유형
조합론, 그래프, 그리디
정답자
아직 제출이 없습니다

문제

Рассмотрим неориентированный граф GG. Его rr-фактором называется подграф GG, содержащий все его вершины, и некоторое подмножество ребер GG, при этом степень каждой вершины должна быть равна rr (такой граф называется rr-регулярным).

Рассмотрим kk-регулярный граф GG, пусть λ\lambda --- разбиение числа kk на слагаемые: k=a_1+a_2+…+a_mk = a\_1 + a\_2 + \ldots + a\_m. Тогда λ\lambda-разложением графа GG называется набор графов G_1,G_2,…,G_mG\_1, G\_2, \ldots, G\_m, такой что G_iG\_i представляет собой a_ia\_i-фактор графа GG, и каждое ребро исходного графа принадлежит ровно одному из графов G_iG\_i.

Для полного графа с четным числом вершин K_2nK\_{2n} и разбиения λ\lambda числа 2n−12n-1 на слагаемые постройте λ\lambda-разложение K_2nK\_{2n}.

입력

Первая строка входного файла содержит nn (1≤n≤1001 \le n \le 100). Вторая строка содержит число mm, и затем числа a_1,a_2,…,a_ma\_1, a\_2, \ldots, a\_m (1≤a_i≤2n−11 \le a\_i \le 2n-1, ∑a_i=2n−1\sum a\_i = 2n-1).

출력

Выведите mm описаний графа. Описание G_iG\_i должно содержать na_ina\_i ребер. Разделяйте описания графов пустыми строками.

예제1

  1. 예제 1

    입력
    3
    3 1 2 2
    
    예상 출력
    1 4
    2 5
    3 6
    
    1 2
    2 3
    3 4
    4 5
    5 6
    6 1
    
    1 3
    3 5
    5 1
    2 4
    4 6
    6 2