正题


题目大意

一个2∗n2*n2∗n的矩形,求分歌成k块的方案数。


解题思路

我们用fi,j,0/1f_{i,j,0/1}fi,j,0/1​表示前i列,分成j块,第i列是相同一块还是分开的一块。
然后我们分析

(不同颜色表示不同联通块)(字型体汇)

然后推出方程

       (f[i][j][0]+=f[i-1][j-2][0])%=mod;(f[i][j][0]+=f[i-1][j-2][1])%=mod;(f[i][j][0]+=f[i-1][j-1][0]*2)%=mod;(f[i][j][0]+=f[i-1][j-1][1]*2)%=mod;(f[i][j][0]+=f[i-1][j][0])%=mod;(f[i][j][1]+=f[i-1][j-1][0])%=mod;(f[i][j][1]+=f[i-1][j-1][1])%=mod;(f[i][j][1]+=f[i-1][j][0]*2)%=mod;(f[i][j][1]+=f[i-1][j][1])%=mod;

code

#include<cstdio>
#include<algorithm>
#define mod 100000007
#define ll long long
using namespace std;
ll n,k,f[2001][2001][2];
int main()
{scanf("%lld%lld",&n,&k);f[1][2][0]=f[1][1][1]=1;for(ll i=2;i<=n;i++)for(ll j=1;j<=min((i<<1),k);j++){(f[i][j][0]+=f[i-1][j-2][0])%=mod;(f[i][j][0]+=f[i-1][j-2][1])%=mod;(f[i][j][0]+=f[i-1][j-1][0]*2)%=mod;(f[i][j][0]+=f[i-1][j-1][1]*2)%=mod;(f[i][j][0]+=f[i-1][j][0])%=mod;(f[i][j][1]+=f[i-1][j-1][0])%=mod;(f[i][j][1]+=f[i-1][j-1][1])%=mod;(f[i][j][1]+=f[i-1][j][0]*2)%=mod;(f[i][j][1]+=f[i-1][j][1])%=mod;}printf("%lld",(f[n][k][0]+f[n][k][1])%mod);
}

nssl1193-地主【dp】相关推荐

  1. ssl提高组周三备考赛【2018.10.17】

    前言 爆零- 成绩 爆蛋的就不放了 RankRankRank PersonPersonPerson ScoreScoreScore AAA BBB CCC 111 2017hjq2017hjq2017 ...

  2. dp,sp,px相互转化

    方法一: public int sp2px(float sp) {return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, ...

  3. [JS][dp]题解 | #打家劫舍(一)#

    题解 | #打家劫舍(一)# 题目链接 打家劫舍(一) 题目描述 描述 你是一个经验丰富的小偷,准备偷沿街的一排房间,每个房间都存有一定的现金,为了防止被发现,你不能偷相邻的两家,即,如果偷了第一家, ...

  4. HDU 2084 数塔(DP)(JAVA版)

    数塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  5. dp cf 20190615

    A. Timofey and a tree 这个不算是dp,就是一个思维题,好难想的思维题,看了题解才写出来的, 把点和边分开,如果一条边的两个点颜色不同就是特殊边,特殊边两边连的点就叫特殊点, 如果 ...

  6. BZOJ 1003[ZJOI2006]物流运输(SPFA+DP)

    Problem 1003. -- [ZJOI2006]物流运输 1003: [ZJOI2006]物流运输 Time Limit: 10 Sec  Memory Limit: 162 MB Submit ...

  7. [NOI2005]聪聪与可可(期望dp)

    题意:给一张无向图,有一只猫和一只老鼠,猫每秒会向老鼠的方向移动两个单位,若它们的距离为一,那么只会移动一个单位,老鼠会等概率向周围移动一步或不动,求猫抓到老鼠的期望时间. Solution luog ...

  8. Codeforces 903F Clear The Matrix(状态压缩DP)

    题目链接 Clear The Matrix 题意 给定一个$4 * n$的矩形,里面的元素为$'.'$或$'*'$.现在有$4$种正方形可以覆盖掉$'*'$,正方形的边长分别为$1,2,3,4$. 求 ...

  9. 喵哈哈村的魔法考试 Round #1 (Div.2) 题解源码(A.水+暴力,B.dp+栈)

    A.喵哈哈村的魔法石 发布时间: 2017年2月21日 20:05   最后更新: 2017年2月21日 20:06   时间限制: 1000ms   内存限制: 128M 描述 传说喵哈哈村有三种神 ...

  10. 尼克的任务 dp 洛谷1280

    蒟蒻表示老久没看过dp题目了,,挺水的一道dp题目都没想出来,,, 首先设dp[i]表示从开始到i时间的最大空闲时间,用vector to[x] 表示从x点开始的任务结束时间,cnt[x]表示从x开始 ...

最新文章

  1. 女神推荐, 卡片,广告图 ,点击查看更多
  2. Java的赋值与初始化
  3. Mac FinalShell 连接 VirtualBox 命令行卡顿
  4. P1372 又是毕业季I
  5. mysql避免死锁的方法
  6. 网站源代码遭公开,2.43亿名巴西公民个人数据遭泄露
  7. 三网融合催生第三方数据服务产业
  8. 如何将树莓派设置为WiFi热点
  9. Javascript和JQuery函数定义方式
  10. cacti 模版大全
  11. PreminumSoft Navicat版 10.1.7 注册码
  12. 矩阵快速幂(原理+模板)
  13. 上海智能交通建设现状与未来发展要点
  14. linux中怎么生成hwaddr,linux 下 hwaddr 和 macaddr的区别
  15. pe服务器注册表,在 win pe 下修改本机系统注册表
  16. 计算机视觉(三)图像拼接
  17. 一政网好吗,考公务员报班的作用
  18. 性价比降噪耳机:NANK南卡降噪耳机和小米降噪耳机买哪个好?
  19. 计算方法--函数插值
  20. php xampp linux,xampp linux 下载

热门文章

  1. html试题及答案,HTML试题及答案
  2. matlab dy,高手,请问用matlab如何解下面方程:y*Dy=a+b*y;我的计算结果里面含有wrightOmega ,怎样解出一般解?...
  3. 32位mysql安装包_MySQL安装指南(CPT103)
  4. 霍纳法树形流图中处理机p个数_2009系统结构试卷答案
  5. JS中this的应用场景,再了解下apply、call和bind!
  6. [Java基础]函数式接口
  7. [蓝桥杯2016初赛]冰雹数-模拟
  8. 最优间隔分类器-SVM
  9. MySQL 覆盖索引、最左前缀原则、索引下推
  10. P4768 [NOI2018] 归程 Kruskal重构树 + 倍增 + 最短路