A

=w=

B

QvQ

C

题意:

有n条线段(n<=2e5)

每条线段有左端点li,右端点ri,价值cost(1<=li<=ri<=2e5,cost<=1e9)

对于一个给定的x(x<=2e5),寻找两个不相交的线段,使它们的长度和恰好为x,并且价值和最小

分析:

想法肯定是枚举一个线段,然后去check剩余长度的线段中cost最小的那个

但是有一个限制条件,就是线段不能相交

我们可以先对这些时间点进行从小到大排序

dp[i]表示当前长度为i的线段cost的最小值

那么去遍历时间点,如果当前是左端点,那么枚举这个左端点作为答案,去check dp[x-len];如果当前是右端点,那么将对应的线段更新dp数组

这样就不会有线段交叉了

D

题意:

主要是要算f(l)~f(r) (l<=r<=5e6)

f(n)表示将n个人打比赛,最少需要多少次比较(具体看原题)

分析:

可以证明对于n,分成p个人一组,那么p一定是质数时候最优

所以就可以枚举n的所有质因数做dp

此题先要线性筛,然后记录下minfactor[x]表示x的最小质因数

那么对一个数n进行分解质因数的时候,就不断除以minfactor就行了(之前本蒟蒻分解质因数都是试除……吼菜啊……)

E

题意:

长度<=1e5的字符串s和t和一个整数x(x<=30)

问是否能够从s中按顺序挑出若干个子段,拼起来可以凑成t(个数<=x)

分析:

想到dp

dp[pres][pret]表示s串前pres个凑成t串pret个最少需要多少多少个子段

这样明显会MLE TLE

子段数很小,状态的描述又只围绕它们三个,所以可以将子段数作为状态

dp[i][j]表示s串前i个,挑出j段能最多拼出t串的前多少位

dp[i][j]=u

那么可以转移到两种状态:

①dp[i+1][j]=dp[i][j]

②dp[i+lcp][j+1]=u+lcp

如何快速计算lcp呢?

这就是后缀数组的经典应用拉

转载于:https://www.cnblogs.com/wmrv587/p/7113209.html

Codeforces Round #422(Div 2)相关推荐

  1. 【Codeforces Round #422 (Div. 2) C】Hacker, pack your bags!(二分写法)

    [题目链接]:http://codeforces.com/contest/822/problem/C [题意] 有n个旅行计划, 每个旅行计划以开始日期li,结束日期ri,以及花费金钱costi描述; ...

  2. Codeforces Round #506 (Div. 3)

    Codeforces Round #506 (Div. 3) 实习期间事不多,对div3 面向题解和数据编程了一波 A. Many Equal Substrings 题目链接 A题就是找后缀和前缀重合 ...

  3. Codeforces Round #563 (Div. 2)/CF1174

    Codeforces Round #563 (Div. 2)/CF1174 CF1174A Ehab Fails to Be Thanos 其实就是要\(\sum\limits_{i=1}^n a_i ...

  4. 构造 Codeforces Round #302 (Div. 2) B Sea and Islands

    题目传送门 1 /* 2 题意:在n^n的海洋里是否有k块陆地 3 构造算法:按奇偶性来判断,k小于等于所有点数的一半,交叉输出L/S 4 输出完k个L后,之后全部输出S:) 5 5 10 的例子可以 ...

  5. Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解(每日训练 Day.16 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解 比赛链接:h ...

  6. Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...

  7. Codeforces Round #701 (Div. 2) A ~ F ,6题全,超高质量良心题解【每日亿题】2021/2/13

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Add and Divide B - Replace and Keep Sorted C ...

  8. Codeforces Round #700 (Div. 2) D2 Painting the Array II(最通俗易懂的贪心策略讲解)看不懂来打我 ~

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 整场比赛的A ~ E 6题全,全部题目超高质量题解链接: Codeforces Round #700 ...

  9. Codeforces Round #699 (Div. 2) F - AB Tree(贪心、树上DP)超级清晰,良心题解,看不懂来打我 ~

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #699 (Div. 2) F - AB Tree Problem ...

最新文章

  1. 用CSS伪类制作一个不断旋转的八卦图?
  2. Vue中 $ref 的用法
  3. svd奇异值分解_传统推荐算法(一)SVD推荐(1)解读奇异值分解
  4. lua——alien库实现lua调用C动态链接库(dll、so)
  5. vue子组件触发祖先元素的执行的方法
  6. 恋舞ol服务器维护中,【公告】《恋舞OL》5月20日更新维护公告
  7. gradle 引入jar时自动引入父依赖_原创 | 看完此文,你对Gradle的理解又升级了
  8. Powershell远程管理服务器客户端
  9. linux下创建svn仓库及用户
  10. UPDATE语句更新的顺序
  11. 人人讲思政 门门谈育人文章计算机专业,材有新闻|我院开展“课程门门有思政,教师人人讲育人”大讨论活动...
  12. 405.十六进制数 (力扣leetcode) 博主可答疑该问题
  13. 山西省太原市、运城市、大同等市全面推行建筑工地劳务实名制
  14. 国内云服务器提供商排名(仅供参考)
  15. psn注册什么服务器,psn港服注册图文教程
  16. 在Win7上装虚拟机
  17. 六款超好用的大数据分析工具
  18. 商机无限!在政府门户网站升级改造中掘金
  19. 【计算机英语】期末复习笔记
  20. 深度学习部署(十八): CUDA RunTime API _wa_仿射变换的实现

热门文章

  1. python 读写 json文件
  2. SHELL $RANDOM产生的随机数范围是0到32767
  3. 基于modelsim-SE的简单仿真流程—上
  4. 公共技术点之 Java 注解 Annotation
  5. log4j日志文件 log4j.xml log4j.properties配置
  6. Internal Error 2738 - Installing ArcGIS Server 9.3,10 for Java
  7. cookie文件存放在服务器端,cookie存储在客户端还是服务器
  8. python已知有列表_python 列表常用方法
  9. python使用rabbitmq阻塞_python – Celery/RabbitMQ unacked消息阻塞队列?
  10. Unity学习笔记:unity介绍(一)