Go语言实现:【剑指offer】矩阵覆盖
该题目来源于牛客网《剑指offer》专题。
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
先放21,则f(n-1),先放12,则f(n-2)。
Go语言实现:
func rectCover(n int) int {
if n < 1 {
return 0
}
if n == 1 || n == 2 {
return n
}
return rectCover(n-1) + rectCover(n-2)
}