上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 31 下一页
摘要: 以下这个好像叫高斯约旦消元法,没有回代 https://www.luogu.org/blog/37781/solution-p3389 还可以卡常 #include<cstdio> #include<algorithm> #include<cmath> #define eps 1e-7 using 阅读全文
posted @ 2018-03-22 11:02 hehe_54321 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 发现如果给定两个数(a,b),可以用类似辗转相除法在logn的时间内计算出(反向)变到(1,1)的最小步数。 然而并不知道另一个数是多少? 暴力嘛,枚举一下另一个数,反正1000000的nlogn不虚啊 阅读全文
posted @ 2018-03-22 08:55 hehe_54321 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 洛谷 P3384 【模板】树链剖分 错误记录: 1.线段树(54行写成dat[num]=(dat[num]+x)%md;,缺少61行,缺少58行pushdown) 2.113、127行缺少对于L>R的特判 3.以前额外记了一个数组ou[i]表示i子树的出时间戳,然而可以直接用id[i]+sz[i]- 阅读全文
posted @ 2018-03-21 00:22 hehe_54321 阅读(150) 评论(0) 推荐(0) 编辑
摘要: Description给定一个N个结点的树,结点用正整数1..N编号。每条边有一个正整数权值。用d(a,b)表示从结点a到结点b路边上经过边的权值。其中要求a<b.将这n*(n-1)/2个距离从大到小排序,输出前M个距离值。Input第一行两个正整数N,M下面N-1行,每行三个正整数a,b,c(a, 阅读全文
posted @ 2018-03-20 18:19 hehe_54321 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 这题与超级钢琴类似,然而重复的不重复计算贡献。。 那么先求出数组nxt,nxt[i]表示第i个元素之后的第一个与其相等的元素的下标,不存在则nxt[i]=0 考虑取的区间左端点为1时的情况。 将读入序列a中相等元素都只保留最先出现的,其余变为0,然后求前缀和,得到数组b。 此时可以知道,设f(l,r 阅读全文
posted @ 2018-03-18 22:57 hehe_54321 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 1.unique函数 听说并没有把重复的元素放到原数组的最后,网上的某些说法可能是错的 upd:http://zh.cppreference.com/w/cpp/algorithm/unique: 指向范围的新逻辑结尾和物理结尾之间元素的迭代器仍然可解引用,但元素自身拥有未指定值 2.multise 阅读全文
posted @ 2018-03-17 18:39 hehe_54321 阅读(476) 评论(1) 推荐(0) 编辑
摘要: 二维线段树区间更新啊 树套树的外层树,如果是线段树的话一般似乎不能打标记?(毕竟标记不好下传) 然而起码对于这题是可以的...对于外层线段树,每个节点放两个内层线段树dat和setv,分别是得到的值和修改操作留下的标记。 然后外层线段树要标记永久化...标记永久化之后,标记的定义不一样了。 这道题里 阅读全文
posted @ 2018-03-17 18:01 hehe_54321 阅读(561) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.org/problemnew/show/P2048 http://www.lydsy.com/JudgeOnline/problem.php?id=2006 首先计算出数列的前缀和数组a[0]..a[n],那么问题转化为:从[0,n]中选取任意两个数(i,j)使得 阅读全文
posted @ 2018-03-16 22:22 hehe_54321 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 意识到一点:在进行点分治时,每一个点都会作为某一级重心出现,且任意一点只作为重心恰好一次。因此原树上任意一个节点都会出现在点分树上,且是恰好一次 https://www.cnblogs.com/zzqsblog/p/6393023.html 对比http://www.cnblogs.com/hehe 阅读全文
posted @ 2018-03-16 08:10 hehe_54321 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 点分板子2333 注释都是错过的地方 阅读全文
posted @ 2018-03-14 21:41 hehe_54321 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 点分模板题 都快改的跟题解一模一样了2333333 阅读全文
posted @ 2018-03-14 21:40 hehe_54321 阅读(196) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/contest/600/problem/E 暴力启发式合并就行了 提示:set的swap的复杂度是常数,这方面可以放心 我先打了一个很naive的算法 1 #include<cstdio> 2 #include<algorithm> 3 #include< 阅读全文
posted @ 2018-03-14 20:50 hehe_54321 阅读(129) 评论(0) 推荐(0) 编辑
摘要: Kay and Snowflake CodeForces - 686D 题意:给一棵有根树,有很多查询(100000级别的),查询是求以任意一点为根的子树的任意重心。 方法很多,但是我一个都不会 重心几个定义/性质: 1.从树中去掉某点以及和该点相连的所有边后,整棵树变为许多"块"。去掉任意一个重心 阅读全文
posted @ 2018-03-14 14:46 hehe_54321 阅读(336) 评论(0) 推荐(1) 编辑
摘要: 看到这题,第一眼:平衡树水题,随便做一做好了 然后....我在花了n个小时去调试(维护平衡树父节点)之后,... 调了三个小时后,第一次失败的代码(只能查找排名为k的用户编号,不能根据编号查排名) #include<cstdio> #include<algorithm> #include<queue 阅读全文
posted @ 2018-03-12 21:33 hehe_54321 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 这个题也是可以用可持久化线段树来解决的。 值域线段树(也有的叫权值线段树)可以用来维护一个可重集,并实现一些一般情况下平衡树才能实现的事情。 如果用值来当做区间左右端点,每个叶子节点上存某个值出现的次数,非叶子节点上存一定范围内的值出现的总次数,就可以建成值域线段树。可以在上面直接查询第k大值、小于 阅读全文
posted @ 2018-03-08 18:13 hehe_54321 阅读(357) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 31 下一页
AmazingCounters.com