摘要:
原题链接 题解 树上只有两种颜色,我们把每种颜色的连通块记录下来,只有当路径两端的点属于同一连通块且颜色与朋友喜欢的不同时输出0 code #include<bits/stdc++.h> using namespace std; char s[100005]; int fa[100005]; int 阅读全文
posted @ 2024-04-02 19:37
纯粹的
阅读(36)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.这k个城市一定是连成一团在中间的 2.把树展开,变成散发图,剩下的n-k个城市一定在最边缘的位置 3.拓扑排序 dalao's blog code #include<bits/stdc++.h> using namespace std; vector<int> G[100005] 阅读全文
posted @ 2024-04-02 19:19
纯粹的
阅读(305)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.小模拟+树上差分+lca code #include<bits/stdc++.h> using namespace std; int a[300006]={0}; vector<int> G[300005]; int depth[500005]={0}; int fa[50000 阅读全文
posted @ 2024-04-02 14:24
纯粹的
阅读(18)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.修改树上某一段路径 ,最后问你单个点的最大值,很想区间修改,单点查询,且只查询一遍,所以我们往前缀和方向靠 2.一个节点只有一个父亲,所以从底到根的路径是一条链,我们可以在这里应用前缀和,标记策略为令 \(tree[now]++\) 代表 \(now\) 节点到根节点这条链上所有 阅读全文
posted @ 2024-04-02 13:50
纯粹的
阅读(33)
评论(0)
推荐(0)

浙公网安备 33010602011771号