随笔分类 - 图论——最近公共祖先 LCA
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5452 题意:给出一张图和他的一颗生成树,删去最少的边,使图不连通。 删的边中要求有且仅有一条是给定生成树中的边。 删去一条树边以及能和这条树边构成环的非树边,图不连通 所以树上差分,非树边的两个端点+1,lca-
阅读全文
摘要:求LCA,N=1e6,原空间限制8MB 求LCA需要深度,需要跳跃一定距离的祖先,需要父节点 把一个整数压成3个char,f[]存父节点 g[],深度为奇数的点存往上跳576步能到的点,深度为偶数的点存深度 如果深度为奇数的点要求它的深度,求他父节点的深度+1 如果深度为偶数的点要求它往上跳576步
阅读全文
摘要:https://www.lydsy.com/JudgeOnline/problem.php?id=2342 解法一: 对原串构建回文自动机 抽离fail树,从根开始dfs 设len[x]表示节点x表示的最长回文子串长度 在fail树上,x到根节点的路径上的点表示的字符串包含了x代表的回文子串的所有回
阅读全文
摘要:期望得分:100+30+60=190 实际得分:10+0+55=65 到了233 2是奇数位 或223 第2个2是偶数位就会223 、233 循环 #include<cstdio> #define N 1000001 using namespace std; char s[N+5]; int mai
阅读全文
摘要:期望得分:20+40+100=160 实际得分:20+20+100=140 破题关键: f(i)=i 证明:设[1,i]中与i互质的数分别为a1,a2……aφ(i) 那么 i-a1,i-a2,…… i-aφ(i) 也与i互质 所以 Σ ai = i*φ(i)- Σ ai 所以 Σ ai = i*φ(
阅读全文
摘要:期望得分:76+80+30=186 实际得分:72+10+0=82 先看第一问: 本题不是求方案数,所以我们不关心 选的数是什么以及的选的顺序 只关心选了某个数后,对当前gcd的影响 预处理 cnt[i] 表示 i的倍数有多少个 g[i][j] 表示gcd(i,第j张卡片上的数) dp[i][j]
阅读全文
摘要:2746: [HEOI2012]旅行问题 Description yz是Z国的领导人,他规定每个地区的名字只能为26个小写拉丁字母的一个。由于地 区数有可能超过26个,便产生了一个问题,如何辨别名字相同的地区?于是yz规定,一个 地区的描述必须包含它的所有上级,且上级按次序排列。于是,一个地区的描述
阅读全文
摘要:倍增求lca模板 https://www.luogu.org/problem/show?pid=3379
阅读全文
摘要:1787: [Ahoi2008]Meet 紧急集合 Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5 6 4 5 6 6 3 1 2 4 4 6 6 6 Sample Output 5 2 2 5 4 1 6 0 HINT Sou
阅读全文
摘要:期望得分:100+10+60=170 实际得分:100+10+35=145 http://www.cogs.pro/cogs/page/page.php?aid=16 T1 跳石头 时间限制:1 s 内存限制:256 MB 【题目描述】 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组
阅读全文
摘要:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83%7C30 期望得分:100+100+100=300 实际得分:100+10+0=110 T2 思路有漏洞 T3 求到lca的什么什么值,指跳了一个点,没管另一个,丢100 T
阅读全文
摘要:暴力移步 http://www.cnblogs.com/TheRoadToTheGold/p/6673430.html 首先解决本题应用的知识点: dfs序——将求子树的信息(树形)转化为求一段连续区间信息(线形) 线段树——求区间信息 树上差分——统计答案 lca——拆分路径 树链剖分——求lca
阅读全文
摘要:codevs 951 森林 http://codevs.cn/problem/1951/ 2013年省队选拔赛 时间限制: 4 s 空间限制: 256000 KB codevs 951 森林 http://codevs.cn/problem/1951/ 2013年省队选拔赛 codevs 951 森
阅读全文
摘要:bzoj 2588: Spoj 10628. Count on a tree Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权。其中lastans是上一个询问的答案,初始为0,即第一个询问的u
阅读全文