上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页
摘要: 题意 给定一个序列,进行$k$次操作,每次操作将会分割序列。 对于每次操作,可以选择将任意一个区间在任意点分割开,得到左侧和乘以右侧和的收益。 求收益最大值。 思路 子状态$f[i][k]$表示前$i$个数割$k$次最大收益。 推出方程为$f[i][k]=max(f[j][k 1]+sum[j] ( 阅读全文
posted @ 2019-08-15 22:25 Ilverene 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 题意 有一个序列,要求将其分为任意部分。对于每一部分,其值为$at^2+bt+c$,其中$t$为这一部分元素总和,$a,b,c$给定。 思路 容易推出状态转移方程为$f[i]=min(f[j]+a (sum[i] sum[j])^2+b (sum[i] sum[j])+c)$ 朴素转移的时间复杂度为 阅读全文
posted @ 2019-08-15 22:09 Ilverene 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题意 平面上最开始只包含3个点,然后还会依次出现N个点。每新增一个点,请你求出包含这些点的周长最小的多边形的面积。 思路 采用平衡树维护,每次插入寻找前驱和后继,然后添加节点即可。 注意本题有可能会出现三点共线的情况,可以通过随机指定初始点来解决。 精度略有毒瘤之处。 代码 cpp include 阅读全文
posted @ 2019-08-15 13:04 Ilverene 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一个序列,对于每一项有两种操作: 操作1:放置一个守卫塔,耗费$a_i$ 操作2:放置一个木偶,耗费为与右侧第一个守卫塔之间的距离。 求最小耗费。 思路 子状态$f[i]$表示在$i$ 状态转移方程显然为$f[i]=min(f[j]+a[i]+(i j) (i j 1)/2)$。 复杂度为 阅读全文
posted @ 2019-08-15 13:02 Ilverene 阅读(239) 评论(0) 推荐(1) 编辑
摘要: 题意 已知$n,m$,求$\sum^n_a\sum^m_b d(ab)$,其中$d(x)$表示$x$的约数个数。 思路 结论:$d(nm)=\sum_{i|n}\sum_{j|m}[gcd(i,j)==1]$。(证明见后) 由此可得原式等价于$\sum^n_a\sum^m_b\sum_{i|n}\s 阅读全文
posted @ 2019-08-14 20:38 Ilverene 阅读(278) 评论(0) 推荐(0) 编辑
摘要: $8.15$ 好多啊。。。总感觉写不完要咕咕,写一篇是一篇吧。。。 $8.18$ 汇总一个专题贴吧。。。这样貌似理解可以更加深入。 $8.18$ 再加一个目录吧。。。方便阅读。 $8.24$ 在NOIP前开个坑刷省选题吧。。。 目录 专题 省选 8.14 (莫比乌斯反演、小测) 8.15 (斜率优化 阅读全文
posted @ 2019-08-14 20:33 Ilverene 阅读(397) 评论(0) 推荐(0) 编辑
摘要: "传送门" 说起来我刚开始还以为主席树是以虵命名的(雾 题意 给定一个序列,每次询问某个区间$[l,r]$的$k$小值。 思路 首先考虑简化的题目:求$[1,r]$的$k$小值。 我们采用权值线段树,每个节点维护该值域出现的序列项数量,那么在搜索的时候模仿平衡树即可。 由于线段树拥有区间可加(减)性 阅读全文
posted @ 2019-08-13 21:16 Ilverene 阅读(139) 评论(0) 推荐(0) 编辑
摘要: "传送门" 原来写过一篇不能看的,现在重新写一遍,也当是复习巩固可持久化线段树的思想。 题意 给定一个数列以及两种操作: 操作1:修改某一个历史版本某个位置上的值 操作2:查询某一个历史版本某个位置上的值 对于每一个操作,都会生成一个新的历史版本。其中操作2生成的历史版本与查询的版本相同。 思路 考 阅读全文
posted @ 2019-08-13 19:57 Ilverene 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 权值线段树 所谓权值线段树,就是一种维护值而非下标的线段树,我个人倾向于称呼它为值域线段树。 举个栗子:对于一个给定的数组,普通线段树可以维护某个子数组中数的和,而权值线段树可以维护某个区间内数组元素出现的次数。 在实现上,由于值域范围通常较大,权值线段树会采用离散化或动态开点的策略优化空间。 更新 阅读全文
posted @ 2019-08-03 23:34 Ilverene 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一个网格图,上面有x个节点,只允许在这些节点处转弯,问你从起点到终点的最短路。 思路 本题可以把起点和终点都看为中转站,那么显然我们只能在中转站之间移动。 显然,同一行或同一列的中转站没有必要来回走动,中转站的唯一作用就是换乘。 换言之,对于每一个中转站,我们只需要考虑它换乘时的作用即可。 阅读全文
posted @ 2019-07-22 11:58 Ilverene 阅读(238) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页