首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

瓷砖覆盖有关问题

2012-03-17 
瓷砖覆盖问题1.用1*2的瓷砖覆盖8*8的地板,有多少种方式?2.如果是N*M的地板呢?3.用P*Q的瓷砖覆盖M*N的地板

瓷砖覆盖问题
1.用1*2的瓷砖覆盖8*8的地板,有多少种方式?
2.如果是N*M的地板呢?
3.用P*Q的瓷砖覆盖M*N的地板的条件是?


[解决办法]
这些都是微软的面试题呀,可考虑用递归的方式
考虑当第一块砖横着放或者竖着放的两种情况:
f(8,8) = f(7,8)*f(1,6) + f(2,7)*f(6,8);
如果是N*M时,要考虑到N*M的结果是奇偶数的问题,如果是奇数的话,无论怎样都不能覆盖的
如果是偶数的话,就演变成N个1*M的形式了(假设M是偶数的话)

热点排行