题意 : 找出给定序列长度最小的子序列,子序列的和要求满足大于或者等于 S,如果存在则输出最小长度、否则输出 0(序列的元素都是大于 0 小于10000) 分析 : 有关子序列和的问题,都可以考虑采用先构造前缀和的方式来进行接下来的操作 ( 任意子序列的和都能由某两个前缀和的差表示 )。 二分做法 ...
分类:
其他好文 时间:
2017-12-12 21:32:38
阅读次数:
120
http://www.lydsy.com/JudgeOnline/problem.php?id=3261 可持久化Tire+异或前缀和+贪心 可持久化Tire表示二进制数其实就是可持久化的值域线段树 每次贪心地构造最优解 ...
分类:
其他好文 时间:
2017-12-11 23:08:44
阅读次数:
302
Postgres 格式化函数提供一套有效的工具用于把各种数据类型(日期/时间,int,float,numeric)转换成格式化的字符串以及反过来从格式化的字符串转换成原始的数据类型。 表 5-7. 格式化函数 表 5-8. 用于 date/time 转换的模板 所有模板都都允许使用前缀和后缀修改器。 ...
分类:
数据库 时间:
2017-12-11 14:29:29
阅读次数:
236
因为博主比较菜所以可能一些地方写的有问题或者不清楚,以及我的废话有点多… 在这里先感谢下小伙伴ww @MoebiusMeow 的帮助~ 参考资料: [1]浅谈一类积性函数的前缀和(skywalkert) [2]杜教筛——省选前的学习1(_rqy) (下面约定$[p]$表示满足条件$p$时为1不满足为 ...
分类:
其他好文 时间:
2017-12-10 23:03:36
阅读次数:
201
题意 : 给你一个长为n的序列a,有n*(n+1)/2个子区间,问这些子区间里面和为完全平方数的子区间个数。1 <= n <= 100000、0 <= ai <= 10 分析 : 题目的枚举对象是子区间的和,自然想到构造前缀和数组去进行操作(任意子区间的和都能由某两个前缀和做差得到)。由于这里每个元 ...
分类:
其他好文 时间:
2017-12-09 21:04:02
阅读次数:
140
首先要判sum是否是3的整数倍 然后把符合条件的前缀和以及后缀和分别加入到静态vector中 最后扫一下j和k定位在哪然后求总长的差来更新答案 注意i j k至少隔1位,所以lower_bound是s1[i]+2 官方题解是O(n),不过没仔细看 这种解法最坏应该是常数较小的O(nlogn) C++ ...
分类:
其他好文 时间:
2017-12-09 20:53:01
阅读次数:
186
【CF896D】Nephren Runs a Cinema 题意:一个序列中有n格数,每个数可能是0,1,-1,如果一个序列的所有前缀和都>=0且总和$\in [L,R]$,那么我们称这个序列是合法的。求合法序列的个数%P。 n,L,R<=100000,P<=2*10^9 题解:先不考虑0的数,那么 ...
分类:
其他好文 时间:
2017-12-09 15:54:13
阅读次数:
292
哪来什么进阶QAQ,只不过是被虐得更惨了 总结了一下lc传授的套路与模型 一般来讲是求与gcd有关的。那么可以反演得到模型: 令f(d)为1<=x<=n,1<=y<=m且gcd(x,y)=d的数对(x,y)的个数 然后可以枚举d进行一波操作,然后再换个元,大概可以得到 通过预处理出g(x)和前缀和, ...
分类:
其他好文 时间:
2017-12-08 19:24:48
阅读次数:
158
这道题是 BZOJ 2301 Problem b 的加强版 不同的是外面要套一个枚举质数,因为我们不知道GCD是哪个 答案就是 我们令,可得 直接算肯定要TLE,我们注意到前边部分也是可以类分块去搞的 后边的那个可以再看成一个函数,我们预处理出T所有取值的函数值来,就可以利用前缀和O(√n)得出块内 ...
分类:
其他好文 时间:
2017-12-07 00:45:22
阅读次数:
194
http://www.lydsy.com/JudgeOnline/problem.php?id=3697 点分治 休息站在起点到根的路径上或根到终点的路径上。 dfs时记录下路径的树上前缀和x,并判断路径的前缀和为x的节点。 枚举根的每个子树。 用g[i][0/1],f[i][0/1]分别表示已访问 ...
分类:
其他好文 时间:
2017-12-06 21:44:09
阅读次数:
122