算法
clay_2791
不愿随波逐流,迟早掀风起浪
展开
-
luoguP5022旅行
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <vector>#define maxn 5005#define inf 99999999using namespace std;vector<int&...原创 2019-08-06 22:49:11 · 88 阅读 · 0 评论 -
点分治
点分治,是一种处理树上路径问题的工具。举例:给定一棵树和一个整数 k ,求树上等于 k 的路径有多少条?1、找重心(重心所有的子树的大小都不超过整个树大小的一半)是最优的树形DPSize=n;void get_root(int u,int fa){ f[u]=0,size[u]=1;//f数组代表这个点最大子树的大小,size数组代表子树大小的和 for(int i=head[u...原创 2019-08-17 19:04:05 · 218 阅读 · 0 评论