tjoi2016专题

P4092 [HEOI2016/TJOI2016]树 [ 树剖]

传送门 单点修改 , 链查询查到了就break  线段树查询时先找到区间 , 区间内尽量往右边找 , 这样深度更大 #include<bits/stdc++.h>#define N 100050#define M N*2using namespace std;int n,m,tag[N];int first[N],next[M],to[M],tot;int id[N],siz[N

NTT+分治FFT--P4091 [HEOI2016/TJOI2016]求和

传送门 这道题很妙啊 首先看题目中的式子,令新的 f ( n ) = ∑ i = 0 n S ( n , i ) × 2 i × ( i ! ) f(n)=\sum_{i=0}^nS(n,i)\times 2^i\times (i!) f(n)=∑i=0n​S(n,i)×2i×(i!),如果能快速求出这个式子的值,那么 a n s = ∑ i = 0 n f ( i ) ans=\sum_{i