#W025. Love

Love

题目描述

有一个 n x n 的二维数组,表示一个社区。每个格子表示一个人,他们的爱心值用一个整数表示。我们要通过递归的方式将爱传递下去。爱心值的传递规则如下:

  1. 每个格子可以将它的一部分爱心值传递给它的上下左右四个邻居。
  2. 传递的爱心值为当前格子爱心值的四分之一(取整),即 传递值=当前值//4\text{传递值} = \text{当前值} // 4
  3. 传递后,当前格子的爱心值应减少相应的传递值的总和。
  4. 传递操作将持续进行,直到所有格子的爱心值都无法再传递为止(即所有格子的爱心值小于4)。
  5. 新增规则:每个格子在一次传递操作中最多只能传递5次,即最多递归深度为5。

输入格式

  • 第一行输入一个整数 n,表示二维数组的大小。
  • 接下来的 n 行,每行输入 n 个整数,表示初始爱心值。

输出格式

  • 输出 n 行,每行输出 n 个整数,表示爱心传递完成后的最终爱心值。

样例输入

3
10 3 6
7 1 4
2 5 8

样例输出

3 2 2
1 2 3
3 3 0