每日一题 day6 打卡

Analysis

状压dp

dp[i][j]+=dp[i-1][k];

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<algorithm>
  5. #include<cmath>
  6. #define maxn 5000+10
  7. #define mod 100000000
  8. using namespace std;
  9. inline int read()
  10. {
  11. int x=;
  12. bool f=;
  13. char c=getchar();
  14. for(; !isdigit(c); c=getchar()) if(c=='-') f=;
  15. for(; isdigit(c); c=getchar()) x=(x<<)+(x<<)+c-'';
  16. if(f) return x;
  17. return -x;
  18. }
  19. inline void write(int x)
  20. {
  21. if(x<){putchar('-');x=-x;}
  22. if(x>)write(x/);
  23. putchar(x%+'');
  24. }
  25. int m,n;
  26. int t,x,cnt=;
  27. int de[][maxn],num[];
  28. long long dp[][maxn],ans;
  29. inline void count(int a)
  30. {
  31. cnt=;
  32. for(int i=;i<(<<n);i++)
  33. {
  34. if((i&(i<<))||(i&(i>>))||(i&t)) continue;
  35. de[a][++cnt]=i;
  36. }
  37. num[a]=cnt;
  38. }
  39. int main()
  40. {
  41. memset(dp,,sizeof(dp));
  42. m=read();n=read();
  43. for(int i=;i<=m;i++)
  44. {
  45. t=;
  46. for(int j=;j<=n;j++)
  47. {
  48. x=read();
  49. t=(t<<)+-x;
  50. }
  51. count(i);
  52. }
  53. for(int i=;i<=num[];i++) dp[][i]=;
  54. for(int i=;i<=m;i++)
  55. {
  56. for(int j=;j<=num[i];j++)
  57. {
  58. for(int k=;k<=num[i-];k++)
  59. {
  60. if(de[i][j]&de[i-][k]) continue;
  61. dp[i][j]+=dp[i-][k];
  62. }
  63. }
  64. }
  65. for(int i=;i<=num[m];i++)
  66. {
  67. ans+=dp[m][i];
  68. ans%=mod;
  69. }
  70. write(ans);
  71. return ;
  72. }

请各位大佬斧正(反正我不认识斧正是什么意思)

LOJ P10171 牧场的安排 题解的更多相关文章

  1. 【BZOJ1725】[Usaco2006 Nov]Corn Fields牧场的安排 状压DP

    [BZOJ1725][Usaco2006 Nov]Corn Fields牧场的安排 Description Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M< ...

  2. BZOJ1725: [Usaco2006 Nov]Corn Fields牧场的安排

    1725: [Usaco2006 Nov]Corn Fields牧场的安排 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 400  Solved: 290 ...

  3. bzoj1725: [Usaco2006 Nov]Corn Fields牧场的安排(状压dfs)

    1725: [Usaco2006 Nov]Corn Fields牧场的安排 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1122  Solved: 80 ...

  4. bzoj1725 [Usaco2006 Nov]Corn Fields牧场的安排(状压dp)

    1725: [Usaco2006 Nov]Corn Fields牧场的安排 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 714  Solved: 502 ...

  5. 【bzoj1725】[USACO2006 Nov]Corn Fields牧场的安排

    题目描述 Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地.FJ打算在牧场上的某几格土 ...

  6. BZOJ 1725: [Usaco2006 Nov]Corn Fields牧场的安排

    Description Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地.FJ打算在牧 ...

  7. 【bzoj1725】[USACO2006 Nov]Corn Fields牧场的安排 状态压缩dp

    题目描述 Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地.FJ打算在牧场上的某几格土 ...

  8. BZOJ 1725: [Usaco2006 Nov]Corn Fields牧场的安排 状压动归

    Description Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地.FJ打算在牧 ...

  9. 2018.09.22 牧场的安排(状压dp)

    描述 农民 John 购买了一处肥沃的矩形牧场,分成M*N(1 <= M <= 12; 1 <= N <= 12)个 格子.他想在那里的一些格子中种植美味的玉米.遗憾的是,有些 ...

随机推荐

  1. S04_CH02_工程移植ubuntu并一键制作启动盘

    S04_CH02_工程移植ubuntu并一键制作启动盘 2.1概述 2.2搭建硬件系统 本章硬件工程还是使用<S04_CH01_搭建工程移植LINUX/测试EMMC/VGA>所搭建的VIV ...

  2. ES6语法基本使用

    什么是ES6? ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了.Mozilla公司将在这个标准的基础上,推出JavaScript 2. ...

  3. mtd-utils 的 使用

    关于编译可以查看文章:<Arm-Linux 移植 mtd-utils 1.x> 查看信息 使用命令前用cat /proc/mtd 查看一下mtdchar字符设备:或者用ls -l /dev ...

  4. hdu 1242 不用标记数组的深搜

    #include<stdio.h>#include<string.h>char mapp[220][220];int m,n,mmin;void dfs(int x,int y ...

  5. entity-framework-core – 实体框架核心RC2表名称复数

    参考地址:https://docs.microsoft.com/zh-cn/ef/core/modeling/relational/tables http://www.voidcn.com/artic ...

  6. Presto个人常用操作

    时间戳转日期: from_unixtime(1569168000,'yyyy-MM-dd') = '2019-09-23' '20190903'转为'2019-09-23': unix_timesta ...

  7. vue+iview的form表单校验总结

    这篇文章时关于如何使用iview的form表单校验.主要学习如何使用form校验(以校验文字长度为例),以及如何动态添加校验规则和异步校验. 1.为需要校验的表单添加form标签 <!--注意: ...

  8. Html5知识精粹纪录

    1. HTML5文档的正文结构及新元素 正文结构: <header> <nav> <section> <aside> <footer> 深入 ...

  9. java输出月的日历控制台

    LocalDate date=LocalDate.now(); int month=date.getMonthValue(); int today=date.getDayOfMonth(); date ...

  10. Pandas-高级部分及其实验

    有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/11014893.html jupyter代码原文 ...