2013-11-15 21:51

原题传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1037

拿到这道题想到了DP,后来发现三维无法确定的表示状态(起码我是表示不出来)

然后就用四维表示状态,w[i,j,k1,k2]表示一共i个人,j个男生,前i-1个人中任意一个人到第i个人的区间里,男生比女生最多多k1个人且存在k1的情况,

女生比男生最多多k2个人且存在k2的情况

那么w[i,j,k1,k2]这个状态可以更新w[i+1,j+1,k1+1,max(k2-1,0)]表示第i+1个位置放的男生,w[i+1,j,max(k1-1),k2+1]表示放的女生,那么就可以转移了。

//By BLADEVIL
const
d39 =; var
n, m, k :longint;
i, j, k1, k2 :longint;
w :array[..,..,..,..] of longint;
ans :longint;
function max(a,b:longint):longint;
begin
if a>b then max:=a else max:=b;
end;
begin
read(n,m,k);
w[,,,]:=;
w[,,,]:=;
for i:= to n+m- do
for j:= to i do
for k1:= to k do
for k2:= to k do
begin
if w[i,j,k1,k2]= then continue;
if (k1<k) and (j<n) then
w[i+,j+,k1+,max(k2-,)]:=(w[i+,j+,k1+,max(k2-,)]+w[i,j,k1,k2]) mod d39;
if (k2<k) and (i-j<m) then
w[i+,j,max(k1-,),k2+]:=(w[i+,j,max(k1-,),k2+]+w[i,j,k1,k2]) mod d39;
end;
ans:=;
for i:= to k do
for j:= to k do ans:=(ans+w[n+m,n,i,j]) mod d39;
writeln(ans);
end.

BZOJ1037 DP的更多相关文章

  1. [ZJOI2008]生日聚会 BZOJ1037 dp

    题目描述 今天是hidadz小朋友的生日,她邀请了许多朋友来参加她的生日party. hidadz带着朋友们来到花园中,打算坐成一排玩游戏.为了游戏不至于无聊,就座的方案应满足如下条件: 对于任意连续 ...

  2. BZOJ1037 [ZJOI2008]生日聚会Party 【DP】

    1037: [ZJOI2008]生日聚会Party Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 2800  Solved: 1654 [Submi ...

  3. [Bzoj1037][ZJOI2008]生日聚会(DP)

    Description 题目链接 Solution 这题状态比较难想, \(dp[i][j][g][h]\)表示强i个人有j个男生,在某个区间男生最多比女生多g人,女生最多比男生多h人的方案数,然后D ...

  4. BZOJ1037:[ZJOI2008]生日聚会Party(DP)

    Description 今天是hidadz小朋友的生日,她邀请了许多朋友来参加她的生日party.hidadz带着朋友们来到花园中,打算坐成一排玩游戏. 为了游戏不至于无聊,就座的方案应满足如下条件: ...

  5. bzoj1037生日聚会——DP

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1037 记录每个状态时前面所有连续子序列中男生与女生差距的最大值,根据那个转移即可. 代码如下 ...

  6. 【bzoj1037】 ZJOI2008—生日聚会Party

    http://www.lydsy.com/JudgeOnline/problem.php?id=1037 (题目链接) 题意 有n个boy和m个girl排成一排,求使得任意一段的boy个数girl个数 ...

  7. BZOJ 1911: [Apio2010]特别行动队 [斜率优化DP]

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MBSubmit: 4142  Solved: 1964[Submit][Statu ...

  8. 2013 Asia Changsha Regional Contest---Josephina and RPG(DP)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=4800 Problem Description A role-playing game (RPG and ...

  9. AEAI DP V3.7.0 发布,开源综合应用开发平台

    1  升级说明 AEAI DP 3.7版本是AEAI DP一个里程碑版本,基于JDK1.7开发,在本版本中新增支持Rest服务开发机制(默认支持WebService服务开发机制),且支持WS服务.RS ...

随机推荐

  1. 去掉google play专为手机设计标识

    google play上的应用默认都会有个“专为手机设计”的标识 有时应用明明已经针对平板作了优化,但为什么这个标识还在呢,如何去掉这个标识呢,其实只需要两个步骤就好了: 1. 标记为支持高分辨率 & ...

  2. 玩玩自动化测试之selenium篇

    现如今社会科技发展太快了,纯功能点点点已经落后别人好几条街了,所以为了让自己多点职业生涯年限,得挺起肩,傲起头.自动化测试,其本质是用代码程序测试程序,所以其实第一步应该学好编程语言,后再自己开发自动 ...

  3. restAssured + TestNG测试接口,以下是一个get 请求。

    package Elaine.Test.G.APITest; import org.testng.Assert;import org.testng.annotations.BeforeTest;imp ...

  4. 验证码 java实现的程序

    makeCheckcode.java package pic; import java.awt.Color; import java.awt.Font; import java.awt.Graphic ...

  5. SQL SERVER 时间相关操作笔记

    1.DATEADD函数: A.  MSDN上的示例:http://msdn.microsoft.com/zh-cn/library/ms186819%28v=sql.90%29.aspx

  6. C#数据库连接问题

    最近在看C#,今天下午刚开始接触C#的数据库连接,SQL Server2008,问题如图:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名 ...

  7. lintcode-118-不同的子序列

    118-不同的子序列 给出字符串S和字符串T,计算S的不同的子序列中T出现的个数. 子序列字符串是原始字符串通过删除一些(或零个)产生的一个新的字符串,并且对剩下的字符的相对位置没有影响.(比如,&q ...

  8. vue-component=>v-on

    $emit 返回 shouldPropagate,shouldPropagate 是一个布尔值,取决于父链上的是否存在该事件的监听器以及,事件处理程序返回的值.他决定 $dispatch 是否停止冒泡 ...

  9. 传统IT七大职业的云计算转型之路

    毫无疑问,对于那些传统IT技术--企业架构师.系统管理者.测试验收工程师或者网络工程师等开发人员骑身到云计算行业不仅是大势所趋,也能为其带来工作的保证,薪酬也更加丰厚. 如今,企业上云已经成为不可阻挡 ...

  10. 段寻址*****************************TBD

    fffff880`01b05be1 ff9708020000    call    qword ptr [rdi+208h] ds:002b:fffff980`0554ae88=fffffa8004b ...