A85328.「THUPC 2023」Freshman Dream
省选/NOI-
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
小 J 正在学习矩阵乘法。
一旁的小 L 告诉他:只要将两个矩阵对应的位置乘起来,那就能得到两个矩阵的乘法了。
这当然是不对的,但是小 L 要继续骗小 J。为此,她需要在自己的 OJ 上放一道矩阵乘法题,使得这样的矩阵乘法也能得到正确的答案。
因为小 L 的 OJ 跑的很慢并且空间限制也很小,所以这道矩阵乘法题的答案都是 mod2 意义下的。
现在小 L 开始造数据。她先随机生成了一个 n×n 的矩阵 A,具体地,每一个元素以 21 的概率为 1,剩下的概率为 0,且这些事件相互独立。现在,她还要设计另一个 n×n 的 01 矩阵 B,使得 ABij≡AijBij(mod2)。
小 L 试图随机生成矩阵,但是找不出什么满足要求的矩阵;她试图构造几个矩阵,发现只会构造全 0 矩阵,这太明显了。现在,她将生成数据的重任交给了你,你需要给出一个满足要求的 B,同时为了不让大家看出数据有猫腻,她还额外要求了 B 里面恰好有 k 个 1。
输入格式
输入的第一行包含两个正整数 n,k,表示矩阵的大小和题目中的 k。
接下来 n 行,每一行 n 个整数 aij 表示 A 的元素。
输出格式
如果没有任何 B 满足要求,输出一行一个整数 −1。
否则,先输出一行一个整数 1,然后输出 n 行,每行 n 个 {0,1} 中的整数来表示 B 矩阵的元素。如果有多个可能的 B,输出其中一个即可。
输入输出样例
输入#1
3 3 1 0 0 0 1 0 0 0 1
输出#1
1 1 0 0 0 1 0 0 0 1
说明/提示
对于所有测试数据,n=100,0≤k≤n2,aij∈{0,1},所有 aij 均为独立均匀随机。