这题是状压dp的模板题。

至于状压是什么,自己上网查吧,我在这里不多说。

预处理:

1.\(f[i]\)表示第\(i\)行的玉米田可行方案;

\(ok[i]\)表示\(i\)状态是否是可行解。

判断方法:与\(i<<1\)和\(i>>1\) &后 均为0,证明脑补一下就可以了。

之后状压dp

\(dp[i][j]\) 表示枚举到第\(i\)行,状态为\(j\)的方案总数

\(dp[i][j]+=dp[i-1][k]\) 当且仅当 \(ok[i]\) 且 \(j\)&\(f[i]==j\) \(j\)&\(k==0\)

答案是 $\sum_{i=0}^{1<<m-1} dp[n][i] $

注意取模

#include <cstdio>
using namespace std ;
const int p = 100000000 ;
int dp[13][5000],a[13][13],f[13],ok[5000];
int n,m ;
int main(){scanf("%d%d",&n,&m) ;for (int i=1;i<=n;i++)for (int j=1;j<=m;j++)scanf("%d",&a[i][j]) ;for (int i=1;i<=n;i++)for (int j=1;j<=m;j++)f[i]=(f[i]<<1)+a[i][j] ;for (int i=0;i<(1<<m);i++) ok[i]=((!(i&(i<<1)))&&(!(i&(i>>1)))) ;dp[0][0]=1 ;for (int i=1;i<=n;i++)for (int j=0;j<(1<<m);j++)if (ok[j] && ((j&f[i])==j)){for (int k=0;k<(1<<m);k++) if (!(j&k)) dp[i][j]=(dp[i][j]+dp[i-1][k])%p ;}int ans=0;for (int i=0;i<(1<<m);i++) ans=(ans+dp[n][i])%p ;printf("%d\n",ans) ;
} 

转载于:https://www.cnblogs.com/harryhqg/articles/9440648.html

Corn Fields 玉米田相关推荐

  1. 洛谷P1879 [USACO06NOV]玉米田Corn Fields【状压dp】

    P1879 [USACO06NOV]玉米田Corn Fields 时间限制 1.00s 内存限制 125.00MB 题目描述 Farmer John has purchased a lush new ...

  2. 洛谷P1879 [USACO06NOV]玉米田Corn Fields

    P1879 [USACO06NOV]玉米田Corn Fields 题目描述 Farmer John has purchased a lush new rectangular pasture compo ...

  3. [USACO06NOV]玉米田Corn Fields题解

    [USACO06NOV]玉米田Corn Fields题解 --HM 题目描述 农场主John新买了一块长方形的新牧场,这块牧场被划分成M行N列(1 ≤ M ≤ 12; 1 ≤ N ≤ 12),每一格都 ...

  4. 刷题周记(九)——#状压DP:最短Hamilton路径、小国王(互不侵犯)、玉米田(Corn Fields G)、愤怒的小鸟、吃奶酪、炮兵阵地、宝藏 #区间DP:清空字符串#DP:关灯问题II

    文章目录 --2020年12月20日(周日)------------------ 状压DP 一.最短Hamilton路径(模板题) 二.玉米田(P1879 [USACO06NOV]Corn Field ...

  5. 洛谷 P1825 [USACO11OPEN]玉米田迷宫Corn Maze

    题目描述 去年秋天,奶牛们去参观了一个玉米迷宫,迷宫里有一些传送装置,可以将奶牛从一点到另一点进行瞬间转移.这些装置可以双向使用:一头奶牛可以从这个装置的起点立即到此装置的终点,同时也可以从终点出发, ...

  6. 【2016年第1期】基于大数据的玉米田四代棉铃虫发生量的预测模型

    赵雷,杨波,刘勇,牟少敏,温孚江 山东农业大学农业大数据研究中心,山东 泰安 271018 摘要:提出了一种基于支持向量机的预测模型.根据山东省1999-2013年玉米田第四代棉铃虫发生程度采集的数据 ...

  7. 状压dp之二之三 炮兵阵地/玉米田 By cellur925

    一.简单的状压dp 玉米田 题目描述 Farmer John has purchased a lush new rectangular pasture composed of M by N (1 ≤ ...

  8. 【每日DP】day2、P1879 [USACO06NOV]Corn Fields G玉米地(状压DP模板题)难度⭐⭐⭐★

    昨天的每日DP我还在写01背包,今天就到状压DP了,真刺激. P1879 [USACO06NOV]Corn Fields G 题目链接 输入 2 3 1 1 1 0 1 0 输出 9 一道简单的状压D ...

  9. POJ - 3254 - Corn Fields

    线上题目: Corn Fields Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6936   Accepted: 3697 ...

最新文章

  1. 网民网上购物决策时间延长
  2. 《黑天鹅》读书笔记(part4)--对许多人而言,知识的强大作用在于制造自信,而不是提高能力。
  3. 嵩天-Python语言程序设计程序题--第四周:程序的控制结构
  4. 小物件之radio单选列表
  5. Qt 多重继承时 moc 编译出错
  6. JAVA设计一个电视机类_漫谈Java程序设计中的接口应用
  7. ARM汇编加载/存储指令
  8. Airflow 中文文档:命令行界面
  9. 一起来玩AZURE SQL(二)AZURE SQL 初级使用篇
  10. call和apply;this;闭包
  11. App 抓包-Fiddler简单使用教程
  12. 超实用VS Code插件推荐
  13. 关于码元、波特率和比特率
  14. fat32源码c语言,FAT32文件系统基本原理与数据恢复编程
  15. Java曲线之削峰填谷,科学网—Lorenz曲线之削峰填谷 - 李宁的博文
  16. 爱情没有了,生活仍在继续
  17. 今天的雨下的大!从早上就开始下了
  18. java PDF转换图片(IMG)
  19. 机器学习-华为mindspore入门-波士顿房价回归
  20. 模拟量采集模块4-20ma0-10v0-5v转rs485modbus 2/4/8/16路电流电压输出输入

热门文章

  1. centos桌面系统怎么退回终端系统_【社群话题分享】Linux 各大发行版你怎么选?...
  2. 汽车租赁php参考文献,国内外汽车租赁文献综述
  3. python输出语句print i、j、k,python:在exec语句中获取打印输出
  4. Node.js nrm
  5. docker search
  6. python 偏函数装饰器
  7. sqlalchemy filter
  8. linux json 写sql注入,sql注入之AJAX(SQL Injection (AJAX/JSON/jQuery))
  9. 信息安全完全参考手册之本书框架(目录)
  10. 顺丰薪酬体系大曝光,看完感叹:太走心了,不服不行!