摘要:
题目大意: 给你一棵n个点的树,以及m+q条信息。 m条描述点a到b有边直接相连。 q条描述点a和点b的LCA为c。 问有多少符合条件的以1为根的树。 思路: 状压DP。 e[i]记录需要与点i直接相连的点。 sub[i]记录需要在点i子树中的点。 pair[i]记录在点i不同子树下的点对(x,y) 阅读全文
摘要:
题目大意: 告诉你一个长度为n的等差数列在模m意义下的乱序值(互不相等),问是否真的存在满足条件的等差数列,并尝试构造任意一个这样的数列。 思路: 首先我们可以有一个结论: 两个等差数列相等,当且仅当数字和与平方和分别相等。 首先求出一开始的数字和和平方和。 然后我们枚举每一个数作为首项的情况,求出 阅读全文
摘要:
题目大意: 给你一棵带点权的n个结点的树,有m次询问,每次从树上删掉一条路径(u,v),问删掉每条路径后各个连通块权值和的平方之和。 每次询问是独立的。 思路: 首先对树遍历一遍求出每棵子树的权值和。 然后倍增记录下每个结点往上跳2^k层,深度范围内与这条路径无关的每个连通块的权值和的平方之和。 然 阅读全文