随笔分类 -  DP-优化-决策单调性优化

摘要:Description 通往贤者之塔的路上,有许多的危机。 我们可以把这个地形看做是一颗树,根节点编号为1,目标节点编号为n,其中1 n的简单路径上,编号依次递增, 在[1,n]中,一共有n个节点。我们把编号在[1,n]的叫做正确节点,[n+1,m]的叫做错误节点。一个叶子,如果是正 确节点则为正确 阅读全文
posted @ 2018-12-09 18:19 Dream_maker_yk 阅读(385) 评论(0) 推荐(0)
摘要:小Q有n本书,每本书有一个独一无二的编号,现在它们正零乱地在地上排成了一排。 小Q希望把这一排书分成恰好k段,使得每段至少有一本书,然后把每段按照现在的顺序依次放到k层书架的每一层上去。将所有书都放到书架上后,小Q这才突然意识到它们是乱序的,他只好把每一层的书分别按照编号 从小到大排序。排序每次可以 阅读全文
posted @ 2018-11-05 20:22 Dream_maker_yk 阅读(324) 评论(0) 推荐(0)
摘要:"LINK" 题目大意 给你一个序列分成k段 每一段的代价是满足$(a_i=a_j)$的无序数对$(i,j)$的个数 求最小的代价 思路 首先有一个暴力dp的思路是$dp_{i,k}=min(dp_{j,k}+calc(j+1,i))$ 然后看看怎么优化 证明一下这个DP的决策单调性: trz说可以 阅读全文
posted @ 2018-11-05 20:15 Dream_maker_yk 阅读(467) 评论(0) 推荐(0)
摘要:Description 对于一个区间集合 {A1,A2……Ak}(K 1,Ai不等于Aj(i不等于J),定义其权值 S=|A1∪A2∪……AK| |A1∩A2……∩Ak| 即它们的交区间的长度乘上它们并区间的长度。 显然,如果这些区间没有交集则权值为0。 Your Task 给定你若干互不相等的区间 阅读全文
posted @ 2018-10-01 00:01 Dream_maker_yk 阅读(365) 评论(0) 推荐(0)
摘要:"LINK" 因为是图片题就懒得挂了 简要题意: 有n个串,拼接两个串需要加一个空格,给你l和p,问你拼接后每个串的总长减l的绝对值的p次方的最小值 首先打表发现一下这题是决策单调的~~对于所有数据都成立就当他一定成立了~~ 然后网上有神仙用四边形不等式证明了这个东西 "LINK" 我就懒得~~不会 阅读全文
posted @ 2018-09-30 22:46 Dream_maker_yk 阅读(237) 评论(0) 推荐(0)
摘要:"LINK" 懒得搬题面 简要题意: n个物品,每个物品有一个价格和一个吸引力,问你对于$i \in [1,k]$,花费i的价格能得到的最大吸引力 其中价格的范围很小,在$[1,300]$范围内 思路 首先想到一个dp $dp_{i,j}$表示用对于价格小于等于i的物品花费j的价格能得到的最大吸引力 阅读全文
posted @ 2018-09-30 20:16 Dream_maker_yk 阅读(810) 评论(0) 推荐(1)
摘要:Description Flute 很喜欢柠檬。它准备了一串用树枝串起来的贝壳,打算用一种魔法把贝壳变成柠檬。贝壳一共有 N (1 ≤ N ≤ 100,000) 只,按顺序串在树枝上。为了方便,我们从左到右给贝壳编号 1..N。每只贝壳的大小不一定相同,贝壳 i 的大小为 si(1 ≤ si ≤10 阅读全文
posted @ 2018-09-30 17:10 Dream_maker_yk 阅读(262) 评论(0) 推荐(0)
摘要:Description 已知一个长度为n的序列a1,a2,...,an。 对于每个1 using namespace std; // //typename typedef long long ll; //convenient for define for_up(a, b, c) for (int a 阅读全文
posted @ 2018-09-29 22:45 Dream_maker_yk 阅读(198) 评论(0) 推荐(0)