400题留念。 话说这题真是的。。。浪费表情。 算了一下复杂度最好的都要n√nlogn啊。。。这个7w闹哪样。 然而看了一眼题解,按5分。 wtf我还以为有高论啊。 ...
分类:
其他好文 时间:
2017-01-21 18:21:38
阅读次数:
223
题解:
我们对每个等差数列维护一棵线段树。
比如等差为 55 , nn 为 1717 ,则线段树内节点顺序为:
1,6,11,16,2,7,12,17,3,8,13,4,9,14,5,10,15。1,6,11,16,2,7,12,17,3,8,13,4,9,14,5,10,15。
然后查询的时候到对应线段树内查询一段就好了。
然后等差太大 (>5)(>5) 就不用维护线段树了,数量不会太...
分类:
其他好文 时间:
2015-04-10 15:42:11
阅读次数:
144
题目大意给出一个序列,支持单点修改,每次查询一个位置成等差数列中所有数的最大值。思路等差数列如果公差很大的话,那么整个数列中的数并不会很多;但是如果公差很小,我们就可以用线段树来乱搞。具体方法是对于每个公差维护一个线段树,按照对这个公差取模的值来进行划分。这样询问的时候就在一块了。
具体看代码。CODE#define _CRT_SECURE_NO_WARNINGS#include ...
分类:
其他好文 时间:
2015-03-31 22:28:31
阅读次数:
303
设置一个值K。dK:暴力。最优时间复杂度的伪计算:O(n*K*logn(建树)+m*logn(询问类型1)+m*n/K(询问类型2)+m*K*logn(修改))。求此函数最小值,易得,当K=sqrt(m/logn)时,时间复杂度:O(m*sqrt(m*logn))。空间复杂度:O(n*sqrt(m/...
分类:
其他好文 时间:
2015-03-29 19:32:45
阅读次数:
137