hihocoder
samjia2000
I swear...
We are INFINITE.
展开
-
hihocoder 1455 : Rikka with Tree III
Problem给出一个有n个节点的树,每个节点i有权值v[i](1≤v[i]≤n)(1\le v[i]\le n),对于三个不同的点x,y,z,如果y一定出现在x到z的路径上且满足v[z]-v[y]=v[y]-v[x]>0,则称公差d(d=v[z]-v[y]=v[y]-v[x])出现过。问有多少不同的公差出现过。 1≤n≤500001\le n\le 50000Solution这样的题一眼就知道要原创 2017-01-01 12:46:31 · 377 阅读 · 0 评论 -
hihcoder 1117 战争年代
Problem有一棵有n个节点的树,每一轮会等概率随机一个[0,di][0,d_i]内的数uu,然后与xix_i距离不超过uu的点都会被涂成一个新的颜色,相邻的同颜色的点视为同一联通块,问m轮后联通块的期望个数。 1≤n≤20001\le n\le 2000Solution联通块个数=两边的点的颜色不同的边的个数+1 于是我们可以对每条边维护一下两边的点颜色不同的概率,假设有边(u,v)(u,v原创 2017-02-23 15:27:09 · 667 阅读 · 0 评论 -
hihocoder 1381 Little Y's Tree
Problem有一棵有n个节点的树,每次询问删掉k条边后剩下的k+1个联通块里的直径的和。Solution虚树典型套路,考虑怎么维护每个联通块的直径,显然把树看成有根树的话,每棵树因为子树的边被删掉从而在dfs序上变成了若干块,但是由于删掉一条边只会对其直接的父亲产生1的影响,所以加起来是有O(k)块的,那么就只要用线段树维护一下直径,打起来挺快的,一次过掉。Code#include<iostrea原创 2017-02-22 15:35:05 · 412 阅读 · 0 评论