경품 추첨

아직 제출이 없습니다시간 제한1초메모리 제한1024 MB

문제

UCPC가 작년에 이어 올해도 온라인으로 열리는 것이 아쉬웠던 청한이는 평행우주를 뒤져서 평소처럼 모두가 한 곳에 모여 대회를 치르는 세계를 찾아냈다. 청한이는 이 세계의 시상식에서 성대한 경품 추첨 행사를 열기로 했다.

행사가 진행되는 무대에는 KK개의 상자가 놓여 있고, 각 상자에는 수가 적혀 있는 공이 NN개씩 들어 있다. 진행자는 우선 그중 두 개의 상자를 골라서 탁자 위에 올려놓는다. 그리고 두 상자에서 공을 하나씩 뽑고, 두 공에 적힌 수의 합을 당첨 번호로 부른다.

청한이는 추첨을 할 때 당첨 번호가 되도록 다양하게 나와서 더 많은 참가자들에게 당첨 기회가 주어지기를 원한다. 따라서 진행자가 어떤 두 상자를 고르더라도, 두 개의 공을 뽑는 총 N2N^2가지의 모든 경우에 대해 두 공에 적힌 수의 합이 모두 다르게 나오도록 하려고 한다. 청한이를 도와서 이 조건이 만족되도록 상자들을 구성해 주자.

입력

첫 번째 줄에 상자의 개수를 나타내는 정수 KK(2K302 \leq K \leq 30)와 각 상자에 들어 있는 공의 개수를 나타내는 정수 NN(2N2 0002 \leq N \leq 2\ 000)이 공백을 사이에 두고 주어진다.

출력

KK개의 줄에 걸쳐, 각 줄에 각 상자에 들어 있는 공들에 적을 NN개의 정수를 공백으로 구분하여 출력한다.

단, 공에는 11 이상 5 000 0005\ 000\ 000 이하의 정수만을 적을 수 있으며, 가능한 모든 입력에 대해 조건을 만족하는 구성이 존재함이 보장된다.

힌트

진행자가 세 개의 상자 중 어떤 두 상자를 고르더라도 42=164^2=16개의 서로 다른 당첨 번호가 만들어진다. 예를 들어 첫 번째 상자와 두 번째 상자를 골랐을 경우 만들어지는 당첨 번호는 위와 같다.