#228. 基础数据结构练习题 题目链接:http://uoj.ac/problem/228 Solution 这题由于有区间+操作,所以和花神还是不一样的。 花神那道题,我们可以考虑每个数最多开根几次就会成1,而这个必须利用开根的性质 我们维护区间最大、最小、和。区间加操作可以直接做。 区间开方操 ...
分类:
其他好文 时间:
2016-09-27 20:12:10
阅读次数:
168
/*向下取整smg! Popoqqq:题目大意:给定一个序列,提供下列操作:1.将[l.r]区间内每个数a[i]变为sqrt(a[i])2.查询[l,r]区间的和根号是不支持区间修改的,于是我们选择单点修改区间查询的树状数组,但是这样是O(n^2)的,怎么办?我们发现一个数x最多开loglogx次根 ...
分类:
其他好文 时间:
2016-09-17 23:34:30
阅读次数:
188
Description 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的!【hqz:大笨J】” “这道题又被J屎过了!!” “J这程序怎么跑这么快!J要逆袭了!” …… 描述 这一天DJ在给吾等众蒟蒻讲题,花神在一边做题无聊,就跑到了一边跟吾等众蒟蒻一起听。以下是部分摘录: 1. “ ...
分类:
其他好文 时间:
2016-08-27 23:18:57
阅读次数:
229
将(x,y)转化成(x+y,x-y)可以将切比雪夫距离转化成曼哈顿距离(自己推一推) A、B的切比雪夫距离就是A‘、B‘曼哈顿距离的一半。 那么可以将x、y分离处理,排序中位数即可。 注意如果最后选的最优的X、Y代回去不是整数,要在其上下左右中选个最优方案。 #include<algorithm> ...
分类:
其他好文 时间:
2016-08-11 22:37:31
阅读次数:
138
数位dp。 数位dp一直掌握的不好。 用数位dp求出含若干个1的数的个数。 #include #include #include #define LL long long using namespace std; const LL maxn = 60; const LL mod = 10000007... ...
分类:
其他好文 时间:
2016-07-10 21:14:05
阅读次数:
144
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=3207 给出一个长度为\(n\)的串,以及\(m\)个长度为\(k\)的串,求每个长度为\(k\)的串在原串\([x,y]\)区间是否出现过. 分析 这道题要求对比长度为\(k\)的串,于是我们把 ...
分类:
其他好文 时间:
2016-06-20 23:58:34
阅读次数:
538
看到题目就可以想到hash 然后很自然的联想到可持久化权值线段树 WA:base取了偶数 这道题还可以用莫队做,比线段树快一些 可持久化线段树: 1 #include<bits/stdc++.h> 2 #define ll long long 3 #define uint unsigned int ...
分类:
其他好文 时间:
2016-06-08 00:09:02
阅读次数:
286