设为首页 加入收藏

TOP

poj 3254 Corn Fields ,状态压缩DP
2015-07-20 18:00:59 来源: 作者: 【 】 浏览:3
Tags:poj 3254 Corn Fields 状态 压缩

题目链接

题意:

一个矩阵里有很多格子,每个格子有两种状态,可以放牧和不可以放牧,可以放牧用1表示,否则用0表示,在这块牧场放牛,要求两个相邻的方格不能同时放牛,即牛与牛不能相邻。问有多少种放牛方案(一头牛都不放也是一种方案)



state[i] 表示对于一行,保证不相邻的方案


状态:dp[i][ state[j] ] 在状态为state[j]时,到第i行符合条件的可以放牛的方案数

状态转移:dp[i][ state[j] ] =Sigma dp[i-1][state'] (state'为符合条件的所有状态)


nclude
  
   
#include
   
     #include
    
      #include
     
       using namespace std; const int mod = 100000000; int state[1<<13], cnt; //对于一行,保证不相邻的方案 int dp[20][1<<13]; int cur[20]; // cur[i]的值得二进制形式0表示能放,1表示不能放。 int main() { int n, m, i, j, k; scanf("%d%d", &n, &m); int M = 1<
      
       

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇hdu 1800 Flying to the Mars (ma.. 下一篇Probability Through Experiments

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: