花费 50ms 找到217811条记录
1 bzoj 5157: [Tjoi2014]上升序列 dp+持久线段
2018年03月26 - ] ] f[i]=\sum_{j=ls[i]+1}^{i-1}f[j]*[a[j] 显然可以用可持久线段来优化。 代码 #include<iostream> #include<cstdio> #include<cstdlib> #include<
2 BZOJ 5157: [Tjoi2014]上升序列 dp 线段
2018年02月25 - 和正常的 O(n^2) 上升序列dp一样 但要求本质不同 所以每当一个数字出现 就要减掉这个数字之前的dp值 之后线段优化一下就行了 #include<cmath> #include<ctime> #include<
3 BZOJ5157: [Tjoi2014]上升序列
2018年04月24 - Description 对于30%的数据,N<=5000 对于100%的数据,N<=10^5 题目传送门 还是没题面,差评 树状数组被D飞了 代码如下: #include<cmath> #include<cstdio> #in
4 bzoj5157 [Tjoi2014]上升序列
2018年04月16 - 有多少个上升序列。由于答案可能非常大,你只需要输出答案模10^9+7的余数。 输入输出样例 输入样例#1: 复制 4 1 2 3 3 输出样例#1: 复制 4 说明 数据范围 对于 30% 的数据,N ≤ 5000 对于 100% 的数据,N ≤ 10^5 设dp[i
5 bzoj5157 [Tjoi2014]上升序列dp,树状数组优化)
2018年03月12 - dp[i]为以a[i]结尾的上升序列个数,则显然有 dp[i]=&#x2211;j=1i&#x2212;1dp[j]&#x2217;[a[j]&lt;a[i]]+1" role="presentation" style="position
6 bzoj 3173: [Tjoi2013]最长上升序列dp+线段
2018年10月25 - 我也不知道为什么把题看成以插入点为结尾的最长生生子序列……还WA了好几次 先把这个序列最后的样子求出来,具体就是倒着做,用线段维护点数,最开始所有点都是1,然后线段树上二分找到当前数的位置,把这个点标为0(相当于对于这之前的序列这个点是不存在的),把每个数的位置记为p[i] 然后用另一颗线段
7 BZOJ5157 & 洛谷3970:[TJOI2014]上升序列——题解
2018年06月15 - https://www.lydsy.com/JudgeOnline/problem.php?id=5157 https://www.luogu.org/problemnew/show/P3970 给定一个只包含整数的序列(序列元素的绝对值大小不超过10^9),你需要计算上升序列的个数
8 BZOJ5157 [Tjoi2014]上升序列 【树状数组】
2018年05月14 - 题目链接 BZOJ5157 题解 我们只需计算每个位置为开头产生的贡献大小,就相当于之后每个大于当前位置的位置产生的贡献 + 1之和 离散后用树状数组维护即可 要注意去重,后面计算的包含之前的,记录下来减去即可 #include<algorithm>
9 bzoj5157】[Tjoi2014]上升序列 树状数组
2018年02月23 - 题目描述 求一个数列本质不同的至少含有两个元素的上升序列数目模10^9+7的结果。 题解 树状数组 傻逼题,离散后直接使用树状数组统计即可。由于要求本质不同,因此一个数要减去它前一次出现时的贡献(即以它上一次出现的位置为最后一个元素的上升序列数目)统计到答案中。 由于要包含至少两个元素
10 bzoj5157: [Tjoi2014]上升序列(树状数组LIS)
2018年03月10 - 5157: [Tjoi2014]上升序列 题目:传送门 题解:    学一下nlogn的树状数组求最长上生子序列就ok    离散之后,用一个数组记录一下,直接树状数组做    吐槽:妈耶...一开始不会lower_bound 的蒟蒻用手打二分离散...结果去重了...然后屁颠屁颠

 
© 2014-2018 ITdaan.com 粤ICP备14056181号