![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法提高课代码记录
勇气不断进步
这个作者很懒,什么都没留下…
展开
-
ACwing 线段树 1275. 最大数
给定一个正整数数列 a1,a2,…,an,每一个数都在 0∼p−1 之间。可以对这列数进行两种操作:添加操作:向序列后添加一个数,序列长度变成 n+1;询问操作:询问这个序列中最后 L 个数中最大的数是多少。程序运行的最开始,整数序列为空。一共要对整数序列进行 m 次操作。写一个程序,读入操作的序列,并输出询问操作的答案。原创 2023-01-31 16:34:31 · 4713 阅读 · 0 评论 -
AcWing 1010 拦截导弹
输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数,导弹数不超过1000),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。每次找到第一个小于等于当前g[k]序列的数,找到就接到g[k]后面,没找到就另开一g[k+1]序列,接到g[k+1]后面。每次更新g[i]的最小值。但是这种导弹拦截系统有一个缺陷虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。..原创 2022-07-19 13:09:27 · 5226 阅读 · 0 评论 -
AcWing 1016 最大上升子序列和
aN),我们可以得到一些上升的子序列(ai1,ai2,…注意,最长的上升子序列的和不一定是最大的,比如序列(100,1,2,3)的最大上升子序列和为100,而最长上升子序列为(1,2,3)。比如,对于序列(1,7,3,5,9,4,8),有它的一些上升子序列,如(1,7),(3,4,8)等等。第二行给出序列中的N个整数,这些整数的取值范围都在0到10000(可能重复)。这些子序列中和最大为18,为子序列(1,3,5,9)的和。你的任务,就是对于给定的序列,求出最大上升子序列和。输入的第一行是序列的长度N。..原创 2022-07-18 11:53:17 · 5157 阅读 · 0 评论 -
AcWing 1012 友好城市
Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的NNN个城市。北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同。每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故。编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多。...原创 2022-07-18 11:33:42 · 5096 阅读 · 0 评论 -
AcWing 482 合唱队形 (与AcWing 1014 登山 一模一样)
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK,则他们的身高满足T1…>TK(1≤i≤K)。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。...原创 2022-07-15 15:14:05 · 4679 阅读 · 0 评论 -
AcWing 1014 登山 前后两遍LIS+枚举
五一到了,ACM队组织大家去登山观光,队员们发现山上一个有N个景点,并且决定按照顺序来浏览这些景点,即每次所浏览景点的编号都要大于前一个浏览景点的编号。思路先预处理前后两个最长上升子序列(LIS)长度,再枚举中间点k取最大的前后长度和。同时队员们还有另一个登山习惯,就是不连续浏览海拔相同的两个景点,并且一旦开始下山,就不再向上走了。队员们希望在满足上面条件的同时,尽可能多的浏览景点,你能帮他们找出最多可能浏览的景点数么?第二行包含N个整数,表示每个景点的海拔。输出一个整数,表示最多能浏览的景点数。...原创 2022-07-15 14:55:23 · 5227 阅读 · 0 评论 -
AcWing 1017. 怪盗基德的滑翔翼 双向上升子序列
思路正向一遍LIS(最长上升子序列),再反向一遍LIS。原创 2022-07-15 14:33:26 · 5153 阅读 · 0 评论