题目传送门:960F 思路: 题目给人的感觉很像最长上升子序列,自然而然想到用dp的思路去处理 题目中给的限制条件是,要接上前面的边,前面的边权一定要小于当前的边权(题目按照输入的顺序,因此只找前面的边) 对于每个结点,我们要维护的信息是: 当前状态下,w的边权到达这个点,最多能有几条边 如何维护这 ...
分类:
编程语言 时间:
2019-02-27 01:14:00
阅读次数:
169
「Luogu2221」[HAOI2012]高速公路 "problem" 题目描述 $Y901$高速公路是一条重要的交通纽带,政府部门建设初期的投入以及使用期间的养护费用都不低,因此政府在这条高速公路上设立了许多收费站。 $Y901$高速公路是一条由$N 1$段路以及$N$个收费站组成的东西向的链,我 ...
分类:
其他好文 时间:
2019-02-26 22:22:18
阅读次数:
203
One Occurrence 为什么我半年前这么菜呀, 这种场只A三题。。。 我们在主席树 || 线段树上维护每个数的右边和它一样的数在哪里, 然后就变成了区间求最大值。 注意加进去的时候要把它右边一样的数的信息删掉。 我懒得离线数据就写了个主席树。 ...
分类:
其他好文 时间:
2019-02-26 11:48:17
阅读次数:
167
先来分析几个容易出错的题目 第一题: 这道题大家会误认为是1 其实在内部函数执行时,无论这个判断是否成立,都会对声明变量进行提升,所以var foo = undefined,所以在内部判断,因为undefined是false,取反就是true,执行var foo = 10,所以: 最后答案就是10 ...
分类:
Web程序 时间:
2019-02-25 13:23:55
阅读次数:
218
验证器类:$validate=new \think\Validate($rule,$message,$field); 独立验证: make、rule、extend、setTypeMsg、message、scene、hasscene、batcch、check、getError 验证器:定义在模块下的v ...
分类:
Web程序 时间:
2019-02-25 01:02:46
阅读次数:
337
#178. 「2019冬令营提高组」全连 显然我们可以得出一个$O(n^2)$的dp方程 记$f(i)$为取到第$i$个音符时的最大分数,枚举下一个音符的位置$j$进行转移。 蓝后我们就可以用树状数组存下$f(i)$的最大值,每次用$logn$的复杂度每次询问$j=1 \rightarrow i-t ...
分类:
编程语言 时间:
2019-02-24 17:24:10
阅读次数:
182
题意 "题目链接" Sol 这题可以动态dp做。 设$f[i]$表示以$i$为结尾的最大子段和,$g[i]$表示$1 i$的最大子段和 那么 $f[i] = max(f[i 1] + a[i], a[i])$ $g[i] = max(g[i 1], f[i])$ 发现只跟前一项有关,而且$g[i]从 ...
分类:
其他好文 时间:
2019-02-24 10:26:28
阅读次数:
175
题目描述 给出$n$个数,支持区间加,区间覆盖,区间第$k$小,区间的$x$次幂和.数据随机 解题思路 学ODT之前,第四个操作我是维护不来的. 第一次写ODT,ODT在数据随机有区间覆盖操作的情况下有优秀的复杂度. 关键就是用一棵平衡树维护覆盖的区间,其他就是暴力...... ...
分类:
其他好文 时间:
2019-02-23 10:23:27
阅读次数:
207
这个题有点意思,正常写法肯定会T,然后需要优化。先用拓扑排序重构一遍树,然后进行一个非常神奇的操作:把每个点放在他的食物的lca上,然后计算的时候直接dfs全加上就行了。为什么呢,因为假如你的食物的lca死了,你就很自然的死了。这个题还要加一个超级源点,一开始我没加只拿了20分。但是不知道为什么,后 ...
分类:
编程语言 时间:
2019-02-23 01:08:11
阅读次数:
202