题目:我们可以用 2*1 的小矩形横着或者竖着去覆盖更大的矩形。请问用 n 个 2*1 的小矩形无重叠地覆盖一个 2*n 的大矩形,总共有多少种方法? 实现 123456789101112131415161718192021 public class { public int RectCover(int target) { if (target == 0) return 0; if (target == 1) return 1; if (target == 2) return 2; // 动态规划 f(n)=f(n-1)+f(n-2) int a = 1, b = 2; int tmp; for (int i = 3; i <= target; i++) { tmp = a + b; a = b; b = tmp; } return b; }} 赞微海报分享
近期评论