트리 만들기

n개의 노드로 이루어지고 정확히 m개의 리프를 가지는 트리 중 간선 목록이 사전순으로 가장 앞서는 트리를 만들어 n-1개의 간선을 출력한다.

보통4트리그리디구현완전 탐색아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

nnmm이 주어진다. 노드가 nn개이고 리프가 정확히 mm개인 트리를 하나 만들어 출력한다.

트리는 사이클이 없는 연결 그래프이고, 리프는 차수가 11인 노드이다. 노드 번호는 00번부터 n1n-1번까지이다.

조건을 만족하는 트리는 여러 개일 수 있다. 그중에서 간선 목록이 사전순으로 가장 앞서는 트리를 출력한다. 간선 목록은 이렇게 만든다. 간선마다 두 끝점 중 번호가 작은 쪽을 앞에 두어 u vu\ v (u<vu < v)로 적고, 간선 n1n-1개를 uu가 작은 순서로, uu가 같으면 vv가 작은 순서로 늘어놓는다. 이 목록을 정수 2(n1)2(n-1)개짜리 수열로 보고 사전순으로 비교한다.

주어진 제한에서는 조건을 만족하는 트리가 항상 존재한다.

입력

첫째 줄에 nnmm이 공백으로 구분되어 주어진다. (3n503 \le n \le 50, 2mn12 \le m \le n-1)

출력

n1n-1개의 줄에 트리의 간선을 위에서 정한 순서대로 한 줄에 하나씩 출력한다. 각 줄에는 간선의 두 끝점을 번호가 작은 쪽부터 공백으로 구분해 출력한다.