本题有$O(N)$的优秀做法,但是因为在考场上不一定能想到,就来分享一种$O(N\log_2N)$的做法.虽然有点慢,但是可以过. 前置芝士 1. "线段树" :提高组及以上必备内容,不会的同学可以 "学习一下" . 具体做法 ~~只要会线段树就珂以了,是不是很简单.~~ 先考虑贪心,连续的一定是一 ...
分类:
其他好文 时间:
2020-01-25 19:29:44
阅读次数:
67
「CQOI2015」任务查询系统 "传送门" 好像也是板子题??? 区间修改,单点查询,考虑差分。 然后每次查询时就直接在对应的主席树上二分即可。 参考代码: ...
分类:
其他好文 时间:
2020-01-24 14:40:06
阅读次数:
96
「POI2011」Meteors "传送门" 整体二分,树状数组实现区间修改单点查询,然后注意修改是在环上的。 参考代码: ...
分类:
其他好文 时间:
2020-01-24 00:30:54
阅读次数:
92
可以事先打表观察每个数的约数个数,观察到如果进行替换,若干次后这个数便会被替换成1。 所以我们可以直接暴力的进行区间修改,若这个数已经到达1或2,则以后就不再修改,用并查集和树状数组进行维护。 这个方法用了 "P2391 白雪皑皑" 的思想处理,用并查集标记该点已经不再用替换。 code: ...
分类:
其他好文 时间:
2020-01-23 00:20:17
阅读次数:
113
用计算器算一算,就可以发现$10^{18}$的数,被开方$6$次后就变为了$1$。 所以我们可以直接暴力的进行区间修改,若这个数已经到达$1$,则以后就不再修改(因为$1$开方后还是$1$),用并查集和树状数组进行维护。 这个方法用了 "P2391 白雪皑皑" 的思想处理,用并查集标记该点已经不再用 ...
分类:
其他好文 时间:
2020-01-22 23:56:25
阅读次数:
121
题意: 给你n个数和2个操作,C操作是将一个区间内的每个数都加上k,Q操作是询问一个区间的和 链接:http://poj.org/problem?id=3468 思路: 线段树区间修改+区间查询 代码: #include <iostream> #include <stdio.h> #include ...
分类:
其他好文 时间:
2020-01-21 20:09:42
阅读次数:
82
区间加,区间乘,区间修改,区间1到3次方和查询。 (x + a)^2 = x^2 + ax + a^2 (x + a)^3 = x^3 + a^2x + ax^2 + a^3 所以我们发现3次方和再涉及到加法修改时,可以由2次方和推出。2次方和涉及到加法修改时,可以由一次方和推出。 乘法修改更简单, ...
分类:
其他好文 时间:
2020-01-15 10:01:11
阅读次数:
81
正常区间修改,然后最后一起暴力查一遍就行了。 区间修改有0,需要用-1做lzy标记.... 1 #include <cstdio> 2 #include <map> 3 #include <algorithm> 4 using namespace std; 5 int col[40000],lzy[ ...
分类:
其他好文 时间:
2020-01-13 20:15:57
阅读次数:
77
T1:青蛙
T2:一起自习的日子
T3:字符串
没干脆爆个零怪可惜的? ...
分类:
其他好文 时间:
2020-01-12 13:21:10
阅读次数:
56
A. Cave 洞穴勘测 LCT模板题,只需要维护一棵树的联通性即可。 B. tree 好像是为数不多LCT实现区间修改的题?注意打标记,先下放乘法,再下放加法,乘法顺便在加法标记上乘一下就完了。 C. 水管局长数据加强版 如果没有报废操作,那么只要用最小生成树维护链上最值即可。 然而水管的报废很难 ...
分类:
其他好文 时间:
2019-12-22 11:06:50
阅读次数:
90