考场上切了不考虑没有逆元的情况(出题人真良心). 把概率都乘到一起后发现求的就是线段树上每个节点保存的权值和的平方的和. 这个的修改和查询都可以通过打标记来实现. 考场代码: #include <cstdio> #include <algorithm> #define lson (now<<1) #define rson (now<<1|1) #define ll long long #define setIO(s) freopen(s".in&q…
题目链接: Codeforces235D 题目大意:给出一棵基环树,并给出如下点分治过程,求点数总遍历次数的期望. 点分治过程: 1.遍历当前联通块内所有点 2.随机选择联通块内一个点删除掉 3.对新形成的联通块进行点分治 我们设$P(A,B)$表示当删除$A$时$A,B$连通的概率,显然以$A$为分治中心时会遍历到$B$的概率为$P(A,B)$. 那么答案就是$\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}P(i,j)$. 我们先考虑树的情况: 设$A,B…
Luogu 2590 [ZJOI2008]树的统计 / HYSBZ 1036 [ZJOI2008]树的统计Count (树链剖分,LCA,线段树) Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u到点v的路径上的节点的权值和 注意:从点u到点v的路…
线段树优化$\rm dijkstra$ 线段树每个节点维护$[l,r]$中$dist$最小的点,删除则把该点$dist$赋值为$+\infty$,然后更新该点影响到的线段树上的其他节点即可. 可以得到“更新该节点影响到的线段树上的其他节点”部分的代码:(线段树数组$\rm st[]$) void pushup(int x) { st[x] = dist[st[x << ]] < dist[st[x << | ]] ? st[x << ] : st[x <&l…
LINK:字符串树 先说比较简单的正解.由于我没有从最简单的考虑答案的角度思考 所以... 下次还需要把所有角度都考察到. 求x~y的答案 考虑 求x~根+y~根-2*lca~根的答案. 那么问题变成了 求某个点到根的边有多少条是以当前询问为前缀的. 前缀这个问题容易想到trie树 建立前缀trie树 即 可持久化trie树即可. 还有两种考虑问题的角度. 可以直接对边建立trie树 让询问在上面跑到一个节点 那么 我们问题变成了求某个节点内的终止节点在x~y的路径上的个数. 把点赋上点权 那么…
已更新(2/3):st表.树状数组 st表.树状数组与线段树是三种比较高级的数据结构,大多数操作时间复杂度为O(log n),用来处理一些RMQ问题或类似的数列区间处理问题. 一.ST表(Sparse Table) st表预处理时间复杂度O(n log n),查询O(1),但不支持在线更改,否则要重新进行预处理. 使用一个二维数组:st[i][j]存储i为起点,长度为2j的一段区间最值,即arr[i, i + 2j - 1]. 具体步骤(以最小值为例): 将st[i][0]赋值为arr[i];…
二次联通门 : luogu P3799 妖梦拼木棒 /* luogu P3799 妖梦拼木棒 用一个桶存下所有的木棒 美剧两根短的木棒长度 后随便乘一乘就 好了.. */ #include <algorithm> #include <cstdio> #define Mod 1000000007 #define Max 5000 void read (int &now) { now = ; register char word = getchar (); ') word =…
I. Yukino With Subinterval 题目链接: Problem Descripe Yukino has an array \(a_1, a_2 \cdots a_n\). As a tsundere girl, Yukino is fond of studying subinterval. Today, she gives you four integers $l, r, x, y $, and she is looking for how many different sub…
问题 现在有1~30这30个数,数N被抽上的概率正比于1/sqrt(N+1),求满足这个概率分布的随机数发生器. 思路 第一,如何解决这个"概率正比"问题. 第二,如何产生满足条件的随机数. 第三,有更好的方法吗? 一.解决"概率正比"问题 在概率论中有一个概念叫作"几何概型",举个例子,如何求圆的面积? 先画一个正方形记作A,再在A中画内切圆B.现在随机在A上面撒豆子,落在A上的豆子总数为AN,落在B上的为BN. 那么,当豆子总数趋向无穷大时,…
潇爷昨天刚刚讲完...感觉得还可以...对着模板打了个模板...还是不喜欢用指针.... 1036: [ZJOI2008]树的统计Count Time Limit: 10 Sec Memory Limit: 162 MB Submit: 10559 Solved: 4258 [Submit][Status][Discuss] Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结…