sdut 2619 地板砖(状态压缩dp)
2013-06-06 16:23
225 查看
这是做的第二道状态压缩dp题,又学习了……
#include<stdio.h> #include<string.h> #define mo 10007 int dp[510][1<<6]; int n,m; int ok(int j,int k) { int r1,r2,f=1,col,i;//col表示上一个颜色相同的格子的颜色,f表示上下两行相邻的是否相同。 for(i=1; i<=m; i++) { r1=j%2; r2=k%2; if(r1!=r2) f=1; else { if(f==0&&col==r1) return 0; f=0; col=r1; } j=j>>1; k=k>>1; } return 1; }; int main() { int i,j,k,ans; while(~scanf("%d%d",&n,&m)) { memset(dp,0,sizeof(dp)); for(i=0; i<(1<<m); i++) dp[1][i]=1;//第一行都设为1; for(i=2; i<=n; i++) for(j=0; j<(1<<m); j++) for(k=0; k<(1<<m); k++) if(ok(j,k)) dp[i][j]=(dp[i][j]+dp[i-1][k])%mo; ans=0; for(i=0; i<(1<<m); i++) ans=(ans+dp [i])%mo; printf("%d\n",ans); } }
相关文章推荐
- SDUT2619 地板砖(状态压缩DP)
- SDUT ACM 2619 地板砖 状态压缩启蒙题。。
- hdu1074 状态压缩dp 记录路径
- HDU 3920 Clear All of Them I 状态压缩DP 2011 Multi-University Training Contest 9 - Host by BJTU
- 状态压缩DP 与 树状DP
- Hacker's Crackdown(UVa 11825)状态压缩dp+数学模型
- HDU 1074 课程安排 (状态压缩+DP,经典)
- HDU1565/1569 网络流 || 状态压缩DP
- poj_2441 状态压缩dp
- 状态压缩dp--UVa11825
- HDU 3681 Prison Break(状态压缩dp + BFS)
- UVa 10651 Pebble Solitaire(状态压缩DP)
- Light OJ 1037 - Agent 47(预处理状态压缩DP)
- poj 3254(状态压缩dp)
- 【POJ2411】Mondriaan's Dream-状态压缩DP(插头DP?)
- Educational Codeforces Round 13 E. Another Sith Tournament 状态压缩dp
- hdu3001(3进制状态压缩dp)
- 9.2机房欢乐赛 礼物 (状态压缩+期望dp)
- POJ 3254 Corn Fields (状态压缩DP)
- POJ 1185 炮兵阵地 状态压缩(DP)