SDU暑期集训排位(9)

G. Just Some Permutations

基础 DP 练习部分

  • 定义 \(f(S)\),表示让 S 中的人全 happy 的方案数。
  • \(dp[i][j]\) 表示,\(\sum_{|s|=j,s\subset\{1,...i\}} f(s)\)。
  • 考虑从 \(dp[i][j]\) 开始的转移,可惜它转移不得,因为 \(i+1\) 个人,不知道自己能不能匹配成功。
  • DP 状态记录 \(i+1,i\) 是否被匹配,大部分情况下 \(i+1\) 个人可以匹配 \(i,i+1,i+2\)
  • Cornner Case 是 1 可以匹配 n,n 可以匹配 1,怎么办?
  • DP 状态记录 \(1,n\) 是否被匹配。
  • 于是 \(dp[i][j][\{i,i+1,1,n\} 匹配了哪些]\) 就是个很优雅的状态了,枚举第 \(i+1\) 个人匹配谁即可实现转移。

基础组合数学部分

  • \(ans[i]\) 表示 \(\sum_{|s|=i} f(s)\)
  • rdc 做完 基础 DP 练习后人解体了。
  • \(g(x)\) 表示恰有 \(x\) 个 happy 的人的方案数。
  • \(ans[i]=\sum_{j=x}^{n}g(j)\binom{j}{i}\)

基础的优化部分

  • 比赛中 TLE 掉了。
  • 需要每次都做 \(O(n*m*64)\) 的恐怖 DP?
  • 考虑 \(n=200,m=200\),\(n=100,m=100\) 这个两组 Case 发现 \(dp[1][]\) 到 \(dp[98][]\) 值一样的。
  • 不需要啊,对每组查询,更新 \(dp[i-1],dp[i]\) 即可。

D. Flood in Gridland

  • 单纯形。rdc 比赛中调了一年,因为不知道默认有 \(x_i \geq 0\) 的条件,没文化。
  • 调出来后 WA。
  • sdcgvhgj 比赛后单纯形一发就过了。

SDU暑期集训排位(9)的更多相关文章

  1. SDU暑期集训排位(5)

    SDU暑期集训排位(5) A. You're in the Army Now 题意 类似选志愿.每个人有 mark,有优先级从高到低的志愿. 做法 定睛一看,鲨鼻题.然后 WA. 为什么会 WA 呢? ...

  2. SDU暑期集训排位(4)

    SDU暑期集训排位(4) C. Pick Your Team 题意 有 \(n\) 个人,每个人有能力值,A 和 B 轮流选人,A 先选,B 选人按照一种给出的优先级, A 可以随便选.A 想最大化己 ...

  3. SDU暑期集训排位(8)

    A. A Giveaway 签到 B. Game of XOR 做法 dp[G][L][R]表示在倒数第G代,左边的数是L,右边的数是R,下面共有多少个0和1 区间和转换成两次前缀和和一次单点查询 利 ...

  4. SDU暑期集训排位(3)

    B. Mysterious LCM 做法 保留 \(a_i|x\) 的元素,其它元素解体. \(a_i\) 的某个质因子的指数,要和 \(x\) 的这个质因子一样多,才有贡献,否则这个质因子它在划水啊 ...

  5. SDU暑期集训排位(2)

    A. Art solved by sdcgvhgj 3min 签到 B. Biology solved by sdcgvhgj 85min 暴力 C - Computer Science solved ...

  6. 2014年CCNU-ACM暑期集训总结

    2014年CCNU-ACM暑期集训总结 那个本期待已久的暑期集训居然就这种.溜走了.让自己有点措手不及.很多其它的是对自己的疑问.自己是否能在ACM这个领域有所成就.带着这个疑问,先对这个暑假做个总结 ...

  7. 8.10 正睿暑期集训营 Day7

    目录 2018.8.10 正睿暑期集训营 Day7 总结 A 花园(思路) B 归来(Tarjan 拓扑) C 机场(凸函数 点分治) 考试代码 A B C 2018.8.10 正睿暑期集训营 Day ...

  8. 8.6 正睿暑期集训营 Day3

    目录 2018.8.6 正睿暑期集训营 Day3 A 亵渎(DP) B 绕口令(KMP) C 最远点(LCT) 考试代码 A B C 2018.8.6 正睿暑期集训营 Day3 时间:5h(实际) 期 ...

  9. 8.9 正睿暑期集训营 Day6

    目录 2018.8.9 正睿暑期集训营 Day6 A 萌新拆塔(状压DP) B 奇迹暖暖 C 风花雪月(DP) 考试代码 A B C 2018.8.9 正睿暑期集训营 Day6 时间:2.5h(实际) ...

随机推荐

  1. form.elements[i]

    原生js操作form的一些方法,来看下面写的这个demo,这个demo是展示了一下form.eleemnts[i]的意义和用法: <!DOCTYPE html> <html lang ...

  2. ibatis 核心原理解析!

    关注下方公众号,可以在公众号后台回复“博客园”,免费获得作者 Java 知识体系/面试必看资料. 最近查找一个生产问题的原因,需要深入研究 ibatis 框架的源码.虽然最后证明问题的原因与 ibat ...

  3. 【Java例题】5.4 子串出现的次数

    4. 输入一个字符串s,再输入另一个字符串t,在s中查找t出现的次数. package chapter5; import java.util.Scanner; public class demo4 { ...

  4. 【游记】NOIP2019初赛

    声明 我的游记是一个完整的体系,如果没有阅读过往届文章,阅读可能会受到障碍. ~~~上一篇游记的传送门~~~ 前言 (编辑中) 文章推荐:[游记]NOIP2019复赛

  5. java学习中碰到的疑惑和解答(一)

    今天写一个接口的时候发现,接口的方法不需要写修饰符,直接写数据类型加上方法名(参数)即可通过编译. import java.util.List; import com.bjm.pojo.Flower; ...

  6. HTML/CSS:display:flex 布局教程

    网页布局(layout)是 CSS 的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂 ...

  7. JAVA MQ API方式通信采用Binding MQ Server方式

    package com.mqapi;   /**  * @modified by actorai E-mail:actorai@163.com  * @version 创建时间:2010-9-15 * ...

  8. pull解析案例

    此pull解析案例是eclipes的对不对,不知道, private void getXml() { try { InputStream is = getAssets().open("new ...

  9. G-P-M 模型

    G-P-M 模型概述 每一个OS线程都有一个固定大小的内存块(一般会是2MB)来做栈,这个栈会用来存储当前正在被调用或挂起(指在调用其它函数时)的函数的内部变量.这个固定大小的栈同时很大又很小.因为2 ...

  10. linux+jenkins+python+svn 自动化测试集成之路

    本文背景: 背景1---个人基础: 本机win7上安装pycharm,使用python搭建API自动化测试框架,本地运行Pass.本机上搭建jenkins,创建测试任务,定时构建Pass. 背景2-- ...