摘要: 题目传送门:https://www.luogu.com.cn/problem/P5903 树链剖分LCA 主要在于,首先要找x的k级祖先,从这个点出发不断往上找他的顶端端点,如果顶端端点所在的深度小于k级祖先所在的深度(也就是dep[x] - k),继续找他的父亲节点所在链的顶端端点,循环比较顶端端 阅读全文
posted @ 2022-08-06 15:35 Kyrizer_W 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:https://www.luogu.com.cn/problem/P1347 拓扑排序模板题,第一种情况是求这张图拓扑排序之后是否为n个点,也就是说,这张图必须无环,而且有且仅有一个点的入度为0,第二种情况是求图中是否存在环,第三种情况就是如果在m次建边之后无法得到前两种情况直接输出就可 阅读全文
posted @ 2022-08-05 16:36 Kyrizer_W 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:https://www.luogu.com.cn/problem/P3384 详解可看:https://blog.csdn.net/a_forever_dream/article/details/80651308 /or/ https://oi-wiki.org/graph/hld/#_ 阅读全文
posted @ 2022-08-04 18:40 Kyrizer_W 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=7176 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<vector> 5 #include<ma 阅读全文
posted @ 2022-08-01 15:44 Kyrizer_W 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=3666、 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<vector> 5 #include< 阅读全文
posted @ 2022-08-01 11:06 Kyrizer_W 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:https://www.luogu.com.cn/problem/P1073 思路:首先,我们目的是想要在图上dp求最优的路线,但是原图上会存在环,那么我们就要先通过tarjan缩点,将所有环缩成一个点,同时,记录每个点的最大值和最小值,缩点得到DAG后,我们可以在DAG上进行dp,每次 阅读全文
posted @ 2022-07-31 16:02 Kyrizer_W 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 代码: 1 void tarjan(int u) { 2 dfn[u] = ++dfncnt; 3 low[u] = dfncnt; 4 st.push(u); 5 ins[u] = true; 6 for (int i = 0; i < SPG[u].size(); i++) { 7 int v 阅读全文
posted @ 2022-07-31 11:01 Kyrizer_W 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=7175 题解:先用dijkstra在原图上跑出最短路,然后将所有的最短路重新建图建出最短路图,建完后的图中可能包含0 0环,对结果不造成影响所以通过tarjan缩点,缩出DAG,最后在DAG上dp(其实 阅读全文
posted @ 2022-07-31 10:55 Kyrizer_W 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 模板: 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N = 1000010; 4 int trie[N][30]; 5 int color[N]; 6 int k = 1; 7 8 void insert_trie(cha 阅读全文
posted @ 2022-07-27 10:20 Kyrizer_W 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 题目传送门:https://ac.nowcoder.com/acm/contest/33188/A 题意: • 给出两棵编号 1-n 的树 A B , A B 树上每个节点均有一个权值,给出 k 个关键点的编号,问有多 少种方案使得去掉恰好一个关键点使得剩余关键点在树 A 上 LCA 的权值大于树 阅读全文
posted @ 2022-07-26 18:17 Kyrizer_W 阅读(12) 评论(0) 推荐(0) 编辑