摘要: 测试赛 ljc20020730 解题报告 标签(空格分隔): solution Task A Tiat's easy question 首先,判断图中是否存在长度为奇数的环等价于判断图是否为二分图。 这个两个事情互为充分必要条件。 只需要染色即可,图可能不连通。 复杂度$O(n)$ cpp incl 阅读全文
posted @ 2019-08-02 22:16 ljc20020730 阅读(444) 评论(2) 推荐(1) 编辑
摘要: 标签(空格分隔): 517coding solution problem Task 1 对边进行树上差分。 考虑到一条路径$u v$ 可以将$c_u +=1 ,c_v +=1 ,c_{lca(u,v)} =2 $ 然后对整一棵树求子树和,对于每个点的子树和,就是这个点向上那条边的答案。 复杂度$O( 阅读全文
posted @ 2019-08-02 22:14 ljc20020730 阅读(160) 评论(0) 推荐(0) 编辑
摘要: dfs树与tarjan算法 标签(空格分隔): 517coding problem solution dfs树 tarjan Task 1 给出一幅无向图$G$,在其中给出一个dfs树$T$,选出$G$中的一个边集$E$,使得在所有T Simple Circle(即最多有1条边不在$T$中的路径)包 阅读全文
posted @ 2019-08-02 22:12 ljc20020730 阅读(252) 评论(0) 推荐(0) 编辑
摘要: Task 1 树重心的定义:以这个点为根,那么其所有的子树的大小都不超过整个树的一半. 首先叶子节点的重心必然是自己。 考虑节点u的最重的儿子v,显然最终的答案一定是在该儿子的重心向上跳若干步(不跳到子树外) 由于重心的存在性,所以只需要满足不在该儿子且在当前子树中的节点个数不超过整个子树的一半即可 阅读全文
posted @ 2019-08-02 22:10 ljc20020730 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 线段树 Task 1 维护序列静态操作:$1 \leq n,m\leq 10^5, 15007 \leq a_i \leq 15007$, l r : 询问区间最大连续子段和,即询问$ \max\limits_{l\leq i \leq j \leq r} \sum_{k=i}^j a_k$ 可以设 阅读全文
posted @ 2019-08-02 22:09 ljc20020730 阅读(247) 评论(0) 推荐(0) 编辑