CF2138E1 Determinant Construction (Easy Version)

题目描述

这是该问题的简单版本。不同之处在于本版本中矩阵 $M$ 边长的限制更大,$t$ 的限制更小。只有在你解决了所有版本后才能进行 hack。 给定一个非负整数 $x$。你的任务是构造一个方阵 $M$,满足下列所有条件: - $M$ 的边长不超过 $80$。 - $M$ 中的每个元素都是 $-1$、$0$ 或 $1$。 - $M$ 的行列式为 $x$。 - $M$ 的每一行至多有 $3$ 个非零元素,每一列至多有 $3$ 个非零元素。 可以证明,总是存在这样的矩阵。

输入格式

每组测试包含多组数据。第一行包含一个整数 $t$($1 \le t \le 100$),表示测试用例的数量。 每组测试用例,仅有一行,包含一个整数 $x$($0 \le x \le 10^7$),即期望的行列式值。

输出格式

对于每组测试用例,输出一个整数 $n$($1 \le n \le 80$),表示方阵 $M$ 的边长。 接下来输出 $n$ 行,每行 $n$ 个整数 $M_{i, 1}, M_{i, 2}, \ldots, M_{i, n}$($M_{i,j} \in \{-1, 0, 1\}$),代表矩阵 $M$ 的元素。 若有多组满足条件的矩阵 $M$,可以输出任意一组。

说明/提示

注意,在第三个测试用例中,以下解法: $$ \begin{pmatrix} 1 & 1 & -1 & 1 \\ -1 & -1 & -1 & 1 \\ 1 & -1 & 0 & -1 \\ 1 & -1 & -1 & -1 \end{pmatrix} $$ 是无效的,因为该矩阵第一行有 4 个非零元素。 由 ChatGPT 5 翻译