Một đồ thị (không phải đồ thị đầy đủ) có độ liên thông $k$ nếu $k$ là kích thước của tập con đỉnh nhỏ nhất mà khi xóa các đỉnh đó, đồ thị trở nên không liên thông.
Một đồ thị vô hướng liên thông $G$ được gọi là Hamilton nếu nó có một chu trình Hamilton: một chu trình đi qua mỗi đỉnh đúng một lần (ngoại trừ đỉnh vừa là điểm bắt đầu vừa là điểm kết thúc, được đi qua hai lần).
Bobo muốn xây dựng một đồ thị Hamilton có $n$ đỉnh và độ liên thông $k$. Đồng thời, số cạnh của đồ thị phải nhỏ nhất có thể.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên $n$ và $k$, trong đó $n$ là số đỉnh của đồ thị ($3\le n\le100$, $1\le k\le n-2$).
Dữ liệu ra
Nếu không tồn tại đồ thị như vậy, in ra $-1$ trên một dòng. Ngược lại, in ra một số nguyên $m$ biểu thị số cạnh nhỏ nhất. Sau đó, trên mỗi dòng trong $m$ dòng tiếp theo, in ra hai số nguyên $x$ và $y$ ($1\le x,y\le n$, $x\ne y$), biểu thị một cạnh trong đồ thị. Trên dòng tiếp theo, in ra một hoán vị của các số nguyên $1,2,\ldots,n$ biểu thị một chu trình Hamilton trong đồ thị.
Ví dụ
Dữ liệu vào 1
4 2
Dữ liệu ra 1
4 1 2 2 3 3 4 4 1 1 2 3 4