额,其实我是dp菜,这道题是看了N个大牛的题解写过的,速度也不是很快。
题目大意:
一个n*m的矩阵,往里放2*3的多米诺骨牌,其中矩阵有些地方是坏的,这些地方不能放。
简略题解:
很显然应该用状态压缩的dp,因为n <=150,m<=10,怎样存储状态和转移状态呢?我想了很长时间都没想出来,其实是这样的,因为每个骨牌能不能接上只与上一列的状态有关,所以用四进制保存上一列的状态,然后滚动数组转移,然后就这样,应该是不会超内存也不会超时吧。
附程序:
额,其实我是dp菜,这道题是看了N个大牛的题解写过的,速度也不是很快。
题目大意:
一个n*m的矩阵,往里放2*3的多米诺骨牌,其中矩阵有些地方是坏的,这些地方不能放。
简略题解:
很显然应该用状态压缩的dp,因为n <=150,m<=10,怎样存储状态和转移状态呢?我想了很长时间都没想出来,其实是这样的,因为每个骨牌能不能接上只与上一列的状态有关,所以用四进制保存上一列的状态,然后滚动数组转移,然后就这样,应该是不会超内存也不会超时吧。
附程序: