nssl1193-地主【dp】
正题
题目大意
一个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】相关推荐
- ssl提高组周三备考赛【2018.10.17】
前言 爆零- 成绩 爆蛋的就不放了 RankRankRank PersonPersonPerson ScoreScoreScore AAA BBB CCC 111 2017hjq2017hjq2017 ...
- dp,sp,px相互转化
方法一: public int sp2px(float sp) {return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, ...
- [JS][dp]题解 | #打家劫舍(一)#
题解 | #打家劫舍(一)# 题目链接 打家劫舍(一) 题目描述 描述 你是一个经验丰富的小偷,准备偷沿街的一排房间,每个房间都存有一定的现金,为了防止被发现,你不能偷相邻的两家,即,如果偷了第一家, ...
- HDU 2084 数塔(DP)(JAVA版)
数塔 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...
- dp cf 20190615
A. Timofey and a tree 这个不算是dp,就是一个思维题,好难想的思维题,看了题解才写出来的, 把点和边分开,如果一条边的两个点颜色不同就是特殊边,特殊边两边连的点就叫特殊点, 如果 ...
- BZOJ 1003[ZJOI2006]物流运输(SPFA+DP)
Problem 1003. -- [ZJOI2006]物流运输 1003: [ZJOI2006]物流运输 Time Limit: 10 Sec Memory Limit: 162 MB Submit ...
- [NOI2005]聪聪与可可(期望dp)
题意:给一张无向图,有一只猫和一只老鼠,猫每秒会向老鼠的方向移动两个单位,若它们的距离为一,那么只会移动一个单位,老鼠会等概率向周围移动一步或不动,求猫抓到老鼠的期望时间. Solution luog ...
- Codeforces 903F Clear The Matrix(状态压缩DP)
题目链接 Clear The Matrix 题意 给定一个$4 * n$的矩形,里面的元素为$'.'$或$'*'$.现在有$4$种正方形可以覆盖掉$'*'$,正方形的边长分别为$1,2,3,4$. 求 ...
- 喵哈哈村的魔法考试 Round #1 (Div.2) 题解源码(A.水+暴力,B.dp+栈)
A.喵哈哈村的魔法石 发布时间: 2017年2月21日 20:05 最后更新: 2017年2月21日 20:06 时间限制: 1000ms 内存限制: 128M 描述 传说喵哈哈村有三种神 ...
- 尼克的任务 dp 洛谷1280
蒟蒻表示老久没看过dp题目了,,挺水的一道dp题目都没想出来,,, 首先设dp[i]表示从开始到i时间的最大空闲时间,用vector to[x] 表示从x点开始的任务结束时间,cnt[x]表示从x开始 ...
最新文章
- 女神推荐, 卡片,广告图 ,点击查看更多
- Java的赋值与初始化
- Mac FinalShell 连接 VirtualBox 命令行卡顿
- P1372 又是毕业季I
- mysql避免死锁的方法
- 网站源代码遭公开,2.43亿名巴西公民个人数据遭泄露
- 三网融合催生第三方数据服务产业
- 如何将树莓派设置为WiFi热点
- Javascript和JQuery函数定义方式
- cacti 模版大全
- PreminumSoft Navicat版 10.1.7 注册码
- 矩阵快速幂(原理+模板)
- 上海智能交通建设现状与未来发展要点
- linux中怎么生成hwaddr,linux 下 hwaddr 和 macaddr的区别
- pe服务器注册表,在 win pe 下修改本机系统注册表
- 计算机视觉(三)图像拼接
- 一政网好吗,考公务员报班的作用
- 性价比降噪耳机:NANK南卡降噪耳机和小米降噪耳机买哪个好?
- 计算方法--函数插值
- php xampp linux,xampp linux 下载
热门文章
- html试题及答案,HTML试题及答案
- matlab dy,高手,请问用matlab如何解下面方程:y*Dy=a+b*y;我的计算结果里面含有wrightOmega ,怎样解出一般解?...
- 32位mysql安装包_MySQL安装指南(CPT103)
- 霍纳法树形流图中处理机p个数_2009系统结构试卷答案
- JS中this的应用场景,再了解下apply、call和bind!
- [Java基础]函数式接口
- [蓝桥杯2016初赛]冰雹数-模拟
- 最优间隔分类器-SVM
- MySQL 覆盖索引、最左前缀原则、索引下推
- P4768 [NOI2018] 归程 Kruskal重构树 + 倍增 + 最短路