327. 玉米田

题意:

m * n的土地,有的土地不育,有的可以种植,要求相邻的土地不能同时种植玉米,问有多少种种植方式

题解:

状压dp,先存每一行可能的状态,然后状态转移,注意相邻不能同时种植除了左右还有上下

代码:

#include <bits/stdc++.h>
using namespace std;
const int P=1e9;
int a[15][15],f[15],h[5010],dp[15][5010],ans;
int main(){int n,m;cin>>n>>m;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){cin>>a[i][j];f[i]=(f[i]<<1)+a[i][j];}dp[0][0]=1;for(int i=0;i<(1<<m);i++)h[i]=((i&(i<<1))==0)&&((i&(i>>1))==0);for(int i=1;i<=n;i++)for(int j=0;j<(1<<m);j++)if(h[j]&&((f[i]&j)==j))for(int k=0;k<(1<<m);k++)if((j&k)==0)dp[i][j]=(dp[i][j]+dp[i-1][k])%P;for(int i=0;i<(1<<m);i++)ans=(ans+dp[n][i])%P;cout<<ans;return 0;
}

acwing 327. 玉米田相关推荐

  1. AcWing 327. 玉米田(状态压缩DP)

    AcWing 327. 玉米田(状态压缩DP) 一.问题 二.分析 1.思路 2.状态表示 3.状态转移 4.循环设计 5.初末状态 三.代码 一.问题 二.分析 1.思路 这道题与之前所讲解的AcW ...

  2. AcWing 327 玉米田

    题目描述: 农夫约翰的土地由M*N个小方格组成,现在他要在土地里种植玉米. 非常遗憾,部分土地是不育的,无法种植. 而且,相邻的土地不能同时种植玉米,也就是说种植玉米的所有方格之间都不会有公共边缘. ...

  3. 【AcWing 327. 玉米田】状压dp

    题目链接 题意: 农夫约翰的土地由 M×N 个小方格组成,现在他要在土地里种植玉米. 非常遗憾,部分土地是不育的,无法种植. 而且,相邻的土地不能同时种植玉米,也就是说种植玉米的所有方格之间都不会有公 ...

  4. AcWing 327 玉米田 题解 (动态规划—DP—状态压缩DP)

    原题传送门 #include<bits/stdc++.h>using namespace std;const int N = 14, M = 1 << 12, mod = 1e ...

  5. ACWing 327. 玉米田(状态压缩dp入门)

    农夫约翰的土地由M*N个小方格组成,现在他要在土地里种植玉米. 非常遗憾,部分土地是不育的,无法种植. 而且,相邻的土地不能同时种植玉米,也就是说种植玉米的所有方格之间都不会有公共边缘. 现在给定土地 ...

  6. AcWing 327. 玉米田(棋盘式状压dp 十字形)

    本题与上一题AcWing 1064. 小国王(棋盘式状压dp)几乎一致,只不过上一题是"井字形的约束摆放",而本题是"十字形的约束摆放",即:当前位置上下左右 ...

  7. 【ACWing】327. 玉米田

    题目地址: https://www.acwing.com/problem/content/329/ 农夫约翰的土地由 M × N M\times N M×N个小方格组成,现在他要在土地里种植玉米.非常 ...

  8. 327 玉米田(状态压缩dp)

    1. 问题描述: 农夫约翰的土地由 M×N 个小方格组成,现在他要在土地里种植玉米.非常遗憾,部分土地是不育的,无法种植.而且,相邻的土地不能同时种植玉米,也就是说种植玉米的所有方格之间都不会有公共边 ...

  9. AcWing327.玉米田(状压DP)题解

    Acwing.玉米田(状压DP) 题目传送门 题目描述 农夫约翰的土地由M*N个小方格组成,现在他要在土地里种植玉米. 非常遗憾,部分土地是不育的,无法种植. 而且,相邻的土地不能同时种植玉米,也就是 ...

最新文章

  1. 不同于NLP,数据驱动方法与机器学习无法攻克NLU,原因有三点
  2. 领域模型中分散的事务如何集中统一处理(C#解决方案)
  3. IE下a标签会触发window.onbeforeunload的问题
  4. Redis进阶 -CLUSTER NODES 信息结合实际输出信息解读
  5. 怎么看android sdk 文档
  6. 博士申请 | 哥本哈根大学招收机器学习和信息检索全奖博士生(年薪34万)
  7. thinking-in-java(13) String字符串
  8. Java中的垃圾回收原理
  9. java案例代码10--购物车案例--重要
  10. JAVA中利用Docx4J组件操作word文档,进行docx格式文档的创建、写入、读取、转换html、图片处理示例、转换pdf
  11. 对PID的理解及其实现公式
  12. RJ45和RJ11的线序以及用途
  13. win7计算机里不显示摄像头,win7系统不显示摄像头的解决方法
  14. 阿里云ECS服务器安装Mysql全过程
  15. Java面试题之ServletJSP篇
  16. python安装cfgrib读取grib数据
  17. Oracle spm
  18. Cause: java.sql.SQLException: connection closed
  19. clio7.0测试软件如何安装,原装CLIO10.2 QC电声测试仪
  20. Win10家庭版 接外界显示器,问题解决方案

热门文章

  1. 用3年时间破解学界200多年难题,年仅21岁的天才竟因谈了一场恋爱挂掉了.........
  2. 住宅按套内面积算,医院人脸识别黄牛,DNA碱基对可能会扩充,菜鸟发布供应链系统,猪瘟不影响食品安全,这就是今天的大新闻...
  3. 优雅的读懂支持向量机 SVM 算法
  4. java日期加减秒_Java日期——年、月、日、时、分、秒、周加减计算
  5. Android 封装handler,android封装工作线程跟Handler工具类
  6. cta策略 有哪些_CTA 主流的交易策略都有哪些?
  7. w10计算机无法打印,win10升级后惠普无法打印怎么解决_win10升级后惠普打印不了的处理办法...
  8. 东南大学计算机网络_东南大学,2020年东南大学高考录取分数线分析
  9. python时钟罗盘酷炫代码_抖音上的时钟屏保,被我改造完用来表白
  10. Leetcode周赛复盘——第 71 场力扣双周赛与第 279 场力扣周赛