B. 画饼

传统 1000 ms 256 MiB
标准 IO
Special Judge

题目描述

桃北食堂的花样越来越多。某人也不甘示弱,因为他是画饼大师。

本题中讨论的无向图都是简单无向图。

在无向图中,对于三个不同的顶点 i,j,k(i<j<k)i,j,k (i<j<k),如果 i,ji,j 之间、j,kj,k 之间,k,ik,i 之间都有边,那么我们称 i,j,ki,j,k 构成一个三元环。

我们称一张恰好有 kk 个三元环的无向图为 kk-饼。

现在请你构造一个 kk-饼。输入的 kk 满足 0k1050 \le k \le 10^5。由于倶乐部经费紧张,kk-饼的顶点数目 nn 需要满足 n500n \le 500。保证有解。

输入格式

一行一个整数 kk

输出格式

输出第一行一个正整数 nn 表示 kk-饼中点的个数 nn。满足 1n5001 \le n \le 500

接下来输出你找到的 kk-饼的上三角邻接矩阵。格式如下:

该部分一共输出 n1n-1 行,其中第 ii 行共 nin-i 个数,第 ii 行第 jj 个数表示点 ii 和点 i+ji+j 是否有边,只能为 0011,为 11 表示有边,为 00 表示没有。

样例

样例输入

3

样例输出

5
1 0 1 0
1 1 1
0 1
1