題目:
有乙個n*m(n<=5,m<=1000)的棋盤,現在有1*2及2*1的小木塊無數個,要蓋滿整個棋盤,有多少種方式?答案只需要mod1,000,000,007即可。
例如:對於乙個2*2的棋盤,有兩種方法,一種是使用2個1*2的,一種是使用2個2*1的。
分析:此題由於n比較小,所以可以通過狀態壓縮,去搜尋每乙個狀態,然後根據前一列對後一列的影響,這樣我們只要求出第m+1列狀態為0的情況的個數,就是正解
accode:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
typedef
long
long ll;
const
double pi = acos(-1.0);
const
double eps = 1e-6;
const
int inf = 0x3f3f3f3f;
const
int maxn = 100;
const
int mod = 1e9 + 7;
int t, n, m;
ll dp[1005][(1
<< 5) + 5];
void dfs(int i, int j, int state, int nex)
if ((state&(1
<< (j))) >0)
if ((state&(1
<< (j))) == 0)
if ((state&(1
<< (j))) == 0 && (j + 1
1<<( j + 1))) == 0))
}int main()
}cout
<< dp[m + 1][0] << endl;
return
0;}
很懶,沒辦法
你見過最不求上進的是什麼樣子?我見過的最不求上進的人,既不是學霸又不全算學渣。他們課聽的迷迷糊糊,作業做一些抄一些。想逃課又心存顧忌,行為也不公開對抗規範紀律。為現狀焦慮,又沒有毅力踐行決心去改變自己。三分鐘熱度,時常憎惡自己的不爭氣堅持最多的事情就是堅持不下去。對感情抱有渴望,又疲於用心追尋與經營...
SEO為什麼沒辦法快速見效
eo為什麼沒辦法快速見效,快來一起看一下吧 我們今天可以從原理上再聊聊幾個問題。這樣做,乙個方面既可以幫助老闆正確認識seo,及時調整企業的策略。第二個方面,也可以幫助seo人員在一種正確的環境中擴充套件seo的工作。seo從早前的不理解到後來把seo當成一種神話。seo並不是一種神技,不存在大家現...
沒辦法,SVD就講的這麼好
2 奇異值 下面談談奇異值分解。特徵值分解是乙個提取矩陣特徵很不錯的方法,但是它只是對方陣而言的,在現實的世界中,我們看到的大部分矩陣都不是方陣,比如說有n個學生,每個學生有m科成績,這樣形成的乙個n m的矩陣就不可能是方陣,我們怎樣才能描述這樣普通的矩陣呢的重要特徵呢?奇異值分解可以用來幹這個事情...