Description

\(n\) 个小时,每个小时要么打隔膜要么睡觉,第 \(i\) 个小时,睡觉的愉悦值为 \(s_i\) ,打隔膜的愉悦值为 \(e_i\) ,对于任意一段连续的 \(k\) 小时,必须至少有 \(m_s\) 时间在睡觉, \(m_e\) 时间在打隔膜。求最大愉悦值。

Solution

如果令所有的时间都打隔膜,则在 \(i\) 时刻睡觉的收益就是 \(s_i-e_i\) 。令第 \(i\) 时刻是否睡觉的状态为 \(x_i\) ,则

\[ t1\le x_i+x_{i+1}+x_{i+2}+\cdots +x_{i+k-1}\le k-t2 \]

要最大化
\[ \sum_{i=1}^n x_i\times (s_i-e_i) \]

添加新变量 \(y,z\in [0,+\infty]\) 。有方程组
\[ \begin{cases} x_1+x_2+\cdots +x_k=m_s+y_1\\ x_1+x_2+\cdots +x_k=k-m_e-z_1\\ x_2+x_3+\cdots +x_{k+1}=m_s+y_2\\ x_2+x_3+\cdots +x_{k+1}=k-m_e-z_2\\ \cdots \\ x_{n-k+1}+x_{n-k+2}+\cdots +x_n=m_s+y_{n-k+1}\\ x_{n-k+1}+x_{n-k+2}+\cdots +x_n=k-m_e-z_{n-k+1}\\ 0=0 \end{cases} \]

差分一下
\[ \begin{cases} x_1+x_2+\cdots +x_k=m_s+y_1\\ y_1+z_1=(k-m_e-m_s)\\ x_{k+1}+(k-m_e-m_s)=x_1+y_2+z_1\\ y_2+z_2=(k-m_e-m_s)\\ \cdots\\ y_{n-k+1}+z_{n-k+1}=(k-m_e-m_s)\\ k-m_e=x_{n-k+1}+x_{n-k+2}+\cdots +x_n+z_{n-k+1} \end{cases} \]
每个变量在等式左右各出现一次,故等式看成点,左边看作流出,右边看作流入。对于每个 \(x\) 变量,流出往流出连边,流量为 \(1\) 费用为 \(s_i-e_i\) 。对于 \(y\) 和 \(z\) ,流量为 \(+\infty\) ,费用 \(0\) 。对于常数,流出连向 \(T\) ,流入从 \(S\) 连,流量为常数的值,费用为 \(0\) 。

最后答案为最大费用最大流。

转载于:https://www.cnblogs.com/aziint/p/9176482.html

Gym - 101190D Delight for a Cat相关推荐

  1. Gym 101190D BZOJ 4842 Luogu P6967 LOJ #6071 [NEERC2016]Delight for a Cat (费用流)

    题目链接 (BZOJ) 大人,时代变了 (Gym) https://codeforces.com/gym/101190 (Luogu) https://www.luogu.com.cn/problem ...

  2. 【bzoj4842】[Neerc2016]Delight for a Cat 线性规划与网络流

    题目描述 $n$ 个连续的位置,每个位置可以填入 S 和 E ,第 $i$ 个位置填入 S 可以获得 $s_i$ 的收益,填入 E 可以获得 $e_i$ 的收益.要求每连续的 $k$ 个位置必须包含至 ...

  3. BZOJ.4842.[NEERC2016]Delight for a Cat(费用流)

    BZOJ 参考这儿. 首先如果一个活动的时间满足条件,那么另一个活动也一定满足.还有就是这题就是费用流没有为什么.不妨假设最初所有时间都用来睡觉,那么我们要对每个\(k\)大小区间选出\([t2,k- ...

  4. Team Silver_Bullet 训练记录

    Team members Vec Grunt henryrabbit To do list team:起队名 每周组队训练 补题 Vec: Grunt:切题,切题,切更多的题!做好切所有类型题的觉悟! ...

  5. 图论专题1(网络流)

    推荐阅读: 网络流基础知识和Dinic:http://www.cnblogs.com/SYCstudio/p/7260613.html#3848907 建模:https://www.cnblogs.c ...

  6. 一些有难度的网络流问题

    本质是线性规划 最小割建模 NOI2010 海拔 一个的网格,每跳变的两个方向都有一定数目的人流,每个格点都有海拔,一个人爬坡需要付出高度差的代价,下坡不付出代价,左下角高度为,右上角高度为,求安排其 ...

  7. 2013-2014 ACM-ICPC, NEERC, Southern Subregional Contest Problem D. Grumpy Cat 交互题

    Problem D. Grumpy Cat 题目连接: http://www.codeforces.com/gym/100253 Description This problem is a littl ...

  8. Codeforces gym 2013-2014 Samara SAU ACM ICPC Quarterfinal Qualification Contest

    题目地址:http://codeforces.com/gym/100247 2014.10.27版 26号训练的题,今天发现A题有更高效的解法,用到了前缀最大值和后缀最大值 A. The Power ...

  9. 更深、更轻量级的Transformer!Facebook提出:DeLighT

    点击上方"CVer",选择加"星标"置顶 重磅干货,第一时间送达 本文转载自:AI人工智能初学者 DELIGHT: DEEP AND LIGHT-WEIGHT ...

  10. 矩阵拼接 cat padding_pytorch

    20201219 两个向量形成一个元素 aa=np.array([1,2]) bb=np.array([2,2]) cc=np.vstack((aa,bb)) dd=np.vstack((aa,bb) ...

最新文章

  1. 深入理解 C 指针阅读笔记 -- 第三章
  2. 【Boost】boost库中thread多线程详解5——谈谈线程中断
  3. Thinkphp 3.2中控制页面不缓存
  4. CVPR2020 | 华为GhostNet超越谷歌MobileNetV3
  5. jquery animate自定义动画
  6. python string转int_Python int与string之间的转化
  7. Kali Linux 网络扫描秘籍 第四章 指纹识别(一)
  8. popwindow弹窗
  9. 【poj2096】Collecting Bugs 期望dp
  10. matlab考试,MATLAB考试题
  11. juniper srx电话单通
  12. 梦到两个人辞职,一男一女
  13. word中批量插入图片
  14. CVE-2021-42287、CVE-2021-42278域内提权漏洞
  15. html怎样分级显示,小技巧之分级显示详解
  16. 如何把身份证扫描成电子版?证件转电子版,这3个方法超好用
  17. 黄灯闪烁c语言程序,交通灯控制程序 需要加一个黄灯闪烁三次 求求大神
  18. Qt:坐标/鼠标/触摸
  19. 初三英语关于计算机的作文,2019年中考英语作文范文三篇
  20. strncpy和strcpy和memcpy

热门文章

  1. R与Python手牵手:数据科学导论系列(包的载入)
  2. iOS开发类似于刮刮卡效果,手指划过的区域形成画笔。适用于取出部分图片(截图),如截取出图片中带文字的区域部分。...
  3. java继承涉及的动/静态绑定及隐藏
  4. ExtJS学习之window
  5. 德州扑克的思考和实验
  6. 在ubuntu上安装微博AIR
  7. 浅析Ruby on Rails部署方案(三)
  8. 利用IsPostBack检查网页是不是第一次进入(asp.net)
  9. 4、线程--线程同部
  10. Go多线程并发避免堵塞