30,354
社区成员




之前玩MC的时候一直以为一个水坑只能供养上下左右各一个方块的水稻(如上图),后来才知道一个水坑可以串联到横向和纵向距离均小于6个方块的方形范围。有一段时间一直在考虑如何种植才能使田地利用率最高。如果给定一个n*n个方块组成的正方形,要在这个正方形上种植水稻,每个方块可以种植水稻或者供水。每个水坑只能供养相邻四个方块的水稻,每棵水稻都需要供水,要求用完所有的方块。那么最多可以有多少个方块用于种植水稻?
n=1,水稻:0
n=2,水稻:2
n=3,水稻:6
n=4,水稻:12
如果只考虑上下左右四个方块的话,可以有递推公式(不能保证正确):
设a(n)代表n x n的稻田需要的水坑数量,则有:
a(1) = 1
a(2) = 2
a(3) = 3
a(n) = n * n / 5 + a(n - 3) // n >= 4,/代表整除
x代表水坑
n = 5
x o o x o
o o o o o
o x o o x
o o o o o
x o o x o
n = 6
x x o o x o
o o o o o o
o o x o o x
x o o o o o
o o o x o o
o x o o o x
或者
x o x o o x
o o o o o o
x o o x o o
o o o o o x
o x o o o o
o x o o x o
是的,n = 5时应该是6,n = 6时是9,我再算一下
显然就是n * (n - 1)