Link

  https://jzoj.net/senior/#main/show/2938

Description

  地主某君有一块由2×n个栅格组成的土地,有k个儿子,现在地主快要终老了,要把这些土地分给这些儿子。分给每个儿子的土地最小的单位是一个栅格,同时,分给同一个儿子的土地要求要相邻连续的。地主觉得分给某个儿子的土地面积至少有一个栅格,但是具体多少可以随意。

  请问,聪明的你,能够算出地主一共有多少种分土地的方法吗?也就是说要求把2*n的栅格分成k个连通区域,每个区域至少有一个栅格。

Solution

10~90分

  应该都是正解某些细节没有处理好,或者可以打个递归暴力做一下,可以得到少量的分数

100分

  这道题是道很好的DP题目,准确来说是递推,因为它有许多情况需要讨论。

  我们设f[i,k,0/1]表示你选到第i列,其中分配给k个儿子,第i列两个栅格分配给不同一个儿子为0,反之,为1。

  关键是很难想到转移。

  其中有9种情况,其实应该有12种情况,因为有的,状态一样,但是情况不一样。

  [1]、f[i,k,0]:=f[i,k,0]+f[i-1,k-2.0]

  [2]、f[i,k,0]:=f[i,k,0]+f[i-1,k-2,1]

  [3]、f[i,k,0]:=f[i,k,0]+f[i-1,k-1,1]*2

  [4]、f[i,k,0]:=f[i,k,0]+f[i-1,k-1,0]*2

  [5]、f[i,k,0]:=f[i,k,0]+f[i-1,k,0]

  [6]、f[i,k,1]:=f[i,k,1]+f[i−1,k−1,0]

  [7]、f[i,k,1]:=f[i,k,1]+f[i-1,k-1,1]

  [8]、f[i,k,1]:=f[i,k,1]+f[i-1,k,0]*2

  [9]、f[i,k,1]:=f[i,k,1]+f[i-1,k,1]

  状态怎么来呢?与前一列的状态有关,具体可以分成如下9种。盗用别人的图片

  自己手推一下,非常容易可以的出来,故本题就迎刃而解了。没有想到递推如此强大。

Code

uses math;
const
maxn=;
var
n,m,i,k:longint;
f:array[..,-..,..] of int64;
begin
readln(n,m); f[,,]:=;
f[,,]:=; for i:= to n do
for k:= to min(i*,m) do
begin
f[i,k,]:=(f[i,k,]+f[i-,k-,]+f[i-,k-,]+f[i-,k-,]*+f[i-,k-,]*+f[i-,k,]) mod maxn;
f[i,k,]:=(f[i,k,]+f[i-,k-,]+f[i-,k-,]+f[i-,k,]*+f[i-,k,]) mod maxn;
end; writeln((f[n,m,]+f[n,m,]) mod maxn); writeln(chr());
end.

[jzoj]2938.【NOIP2012模拟8.9】分割田地的更多相关文章

  1. JZOJ【NOIP2012模拟8.9】2020.10.5 T1

    逐个击破 题目 Description 三大战役的平津战场上,傅作义集团在以北平.天津为中心,东起唐山西至张家口的铁路线上摆起子一字长蛇阵,并企图在溃败时从海上南逃或向西逃窜.为了就地歼敌不让其逃走, ...

  2. 洛谷P3145 [USACO16OPEN]分割田地Splitting the Field

    P3145 [USACO16OPEN]分割田地Splitting the Field 题目描述 Farmer John's NN cows (3 \leq N \leq 50,0003≤N≤50,00 ...

  3. JZOJ【NOIP2013模拟联考14】隐藏指令

    JZOJ[NOIP2013模拟联考14]隐藏指令 题目 Description 在d维欧几里得空间中,指令是一个长度为2N的串.串的每一个元素为d个正交基的方向及反方向之一.例如,d = 1时(数轴) ...

  4. 【NOIP2012模拟8.7】JZOJ2020年8月8日提高组T1 奶牛编号

    [NOIP2012模拟8.7]JZOJ2020年8月8日提高组T1 奶牛编号 题目 作为一个神秘的电脑高手,Farmer John 用二进制数字标识他的奶牛. 然而,他有点迷信,标识奶牛用的二进制数字 ...

  5. [jzoj 6092] [GDOI2019模拟2019.3.30] 附耳而至 解题报告 (平面图转对偶图+最小割)

    题目链接: https://jzoj.net/senior/#main/show/6092 题目: 知识点--平面图转对偶图 在求最小割的时候,我们可以把平面图转为对偶图,用最短路来求最小割,这样会比 ...

  6. [jzoj 5664] [GDOI2018Day1模拟4.6] 凫趋雀跃 解题报告(容斥原理)

    interlinkage: https://jzoj.net/senior/#contest/show/2703/3 description: solution: 考虑容斥原理,枚举不合法的走的步数 ...

  7. [jzoj 6101] [GDOI2019模拟2019.4.2] Path 解题报告 (期望)

    题目链接: https://jzoj.net/senior/#main/show/6101 题目: 题解: 设$f_i$表示从节点$i$到节点$n$的期望时间,$f_n=0$ 最优策略就是如果从$i, ...

  8. [jzoj 6093] [GDOI2019模拟2019.3.30] 星辰大海 解题报告 (半平面交)

    题目链接: https://jzoj.net/senior/#contest/show/2686/2 题目: 题解: 说实话这题调试差不多花了我十小时,不过总算借着这道题大概了解了计算几何的基础知识 ...

  9. [jzoj 6080] [GDOI2019模拟2019.3.23] IOer 解题报告 (数学构造)

    题目链接: https://jzoj.net/senior/#main/show/6080 题目: 题意: 给定$n,m,u,v$ 设$t_i=ui+v$ 求$\sum_{k_1+k_2+...+k_ ...

随机推荐

  1. 2019The Preliminary Contest for ICPC China Nanchang National Invitational

    The Preliminary Contest for ICPC China Nanchang National Invitational 题目一览表 考察知识点 I. Max answer 单调栈+ ...

  2. vbox安装增强功能,实现宿主机文件夹共享并浏览器访问

    虚拟机版本:6.0.4 r128413 (Qt5.6.2) linux:centos7/6 点击菜单栏中的设备->安装增强功能,再reboot 获取内核版本号 uname -r 查看yum的内核 ...

  3. 基于USB网卡适配器劫持DHCP Server嗅探Windows NTLM Hash密码

    catalogue . DHCP.WPAD工作过程 . python Responder . USB host/client adapter(USB Armory): 包含DHCP Server . ...

  4. mysql中使用enum,如何获取所有可能的值

    SELECT column_type FROM information_schema. COLUMNS WHERE TABLE_SCHEMA = "数据库名" AND DATA_T ...

  5. Python“函数式编程”中常用的函数

    1.map(func,seq[,seq,...]) 对序列中的每个元素应用函数,python2中map()返回的是列表,python3中返回的是迭代器,可以用list()转换成列表.以下例子为pyth ...

  6. C++中数组作为形参进行传递(转)

    有两种传递方法,一种是function(int a[]); 另一种是function(int *a) 这两种两种方法在函数中对数组参数的修改都会影响到实参本身的值! 对于第一种,根据之前所学,形参是实 ...

  7. frame的用法

    <iframe> 标签规定一个内联框架.一个内联框架被用来在当前 HTML 文档中嵌入另一个文档. 所有的主流浏览器都支持<iframe>标签.你可以把提示的文字放到 < ...

  8. 第30月第6天 git log

    1. git log git log 96a6f18b1e0a1b7301cb4f350537d947afeb22bc -p -1 我们常用 -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最 ...

  9. 【webpack】中mini-css-extract-plugin使用方法

    这个参加可以压缩CSS,然后让CSS输出到指定的目录中 使用这个loader也很简单,只有将style-loader 替换成 MiniCssExtractPlugin.loader, 'css-loa ...

  10. Django 实现list页面检索

    在list.html写入from表单 在views渲染list方法写入,从前台获取的searchtitle根据name实现检索