zoukankan
html css js c++ java
一类区间选择问题的贪心策略
有一类问题在区间上的选择问题有如下特征:
1.
每个选择之间不交叉
2.
区间元素可以在某个选择中,也可以不在任何选择中
3.
最大化选择的个数
对于这类问题,我们可以考虑采取贪心策略。具体来说,对于区间从左到右考虑,每次发现一个可行的组合就选择,保证右区间尽可能小。
Codechef CHEFPRAD
[给a,b数组,数组内部元素相对位置不变,但ab之间的元素可以同时位移一个距离。每个元素可以匹配和它距离小于y的对面的点,求最大匹配]
[观察到最优匹配方案一定是落在b数组某个元素的上边界上(如果没有,则稍加调整就可以得到)。于是我们可以花O(n^2)的代价枚举位移。对于枚举的那个匹配上下可以分别贪心]
[如果用dp就会tle]
codeforces 467E
[给一个序列,让你挑出最多的数,使得每四个挑出的数呈现ABAB的形式]
[显然我们从左到右遇到一个ABAB就贪心地选择它。如何判断出现?对于AXXXXXXA,我们可以把中间的X用A标记。当某个被标记地元素再次出现时,我们就得到了一组解]
[如果不贪心,用DP的思路考虑就会非常na
ï
ve。每次最多往之前相同的数字跳3次,每次需要用可持久化线段树计算有没有pre落在区间的左边。]
查看全文
相关阅读:
Half Nice Years Gym
LCM from 1 to n
Educational Codeforces Round 70 (Rated for Div. 2)
Rating(概率DP) HDU
Josephina and RPG(概率DP) ZOJ
数据结构实验之串二:字符串匹配(字符串哈希)
点分治——入门学习笔记
使用ASP.NET Core 3.x 构建 RESTful API P15 处理故障
使用ASP.NET Core 3.x 构建 RESTful API P13 P14 获取父子关系的资源
使用ASP.NET Core 3.x 构建 RESTful API P11 P12 ActionResult of T 以及 AutoMapper
原文地址:https://www.cnblogs.com/jszkc/p/7271387.html
最新文章
js 保留两位小数,
判断字符串内包含某个字符
表格滚动
vue-awesome-swiper 的使用
轮播图 -- 最简陋--原生
CASE函数用法:相当于switch..case:,能够实现等值判断,也可以做范围判断 相当于if...else
字符串函数:获取个数,替换,除空格
数学函数:随机数,幂,平方根
日期函数:getdate,dateadd,dateiff
联合结果集union
热门文章
类型转换函数:cast,convert
聚合函数:sum,avg,max,min,count;模糊查询;排序
分组统计:count,group by,having, order by
数据删除:delete
数据检索,top,Distinct去除重复记录
链表
动态规划面试题型归类机
Docker使用
Ubuntu机器学习环境安装记录
TensorRT部署
Copyright © 2011-2022 走看看