while True:
try:
n, m, k = map(int, input().split())
if k < max(n, m):
print(-1)
else:
# 创建一个全是0的二维数组
lst = [[0 for _ in range(m)] for _ in range(n)] # 列表推导式
# 首先把数组的对角线给放上小球
i, j = 0, 0
while i <= n-1 and j <= m-1:
lst[i][j] = 1
i += 1
j += 1
# 给剩下的行或列放上小球
if j < m-1:
while j <= m-1:
lst[n-1][j] = 1
j += 1
else: # 即i<n-1的情况
while i < n-1:
lst[i][m-1] = 1
i += 1
# 把剩余的小球放在最后一个位置上
lst[n-1][m-1] = k - max(n, m) + 1
for x in range(n):
print(' '.join(map(str, lst[x])))
except:
break



京公网安备 11010502036488号