摘要:
Maximal submatrix 题目链接 https://acm.hdu.edu.cn/showproblem.php?pid=6957 题意 给定一个 \(n\) 行 \(m\) 列的矩阵,求每个列上不递减的最大面积子矩阵 思路 令 \(sum[i][j]\) 为第 \(i\) 行第 \(j\ 阅读全文
摘要:
Xor sum 题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=6955 题意 给定 \(n\) 个数,求异或和大于等于 \(k\) 的最短的区间左右端点,如果有多个答案,输出左端点编号最小的那个。 思路 由于异或的自反性,我们做个前缀异或和可将区间异或 阅读全文
摘要:
题目链接 https://ac.nowcoder.com/acm/problem/51319 题意 求每个男孩可以选择多少个女孩使得完美匹配依然存在。 思路 建图时, 男孩对喜欢的女孩建一条单向边, 和暂时匹配的女孩建一条双向边, 当男孩和女孩同处于一个强连通分量并且图中有边, 男孩就可以选择这个女 阅读全文
摘要:
题目链接 https://ac.nowcoder.com/acm/problem/51267 题意 求无向图中不在奇圈上的点。 思路 1.如果一个双连通分量内的某些顶点在一个奇圈中(即双连通分量含有奇圈),那么这个双连通分量的其他顶点也在某个奇圈中; 2.如果一个双连通分量含有奇圈,则他必定不是一个 阅读全文
摘要:
题目链接 https://ac.nowcoder.com/acm/problem/51269 题意 给你一张有向图,问最少加几条边使得图上的点属于同一个强连通分量。 思路 缩点后入度为0的点和出度为0的点取最大值, 特判缩点完只有一个点的情况。 AC代码 #include<bits/stdc++.h 阅读全文
摘要:
题目链接 https://codeforces.com/contest/1473/problem/E ##题意 给定一张带权无向无环图,求$1$号点到其他点的最小路径权值。 路径的权值等于路径上所有边的权值和加上路径上最小的边减去最大的边。 思路 分层图最短路,减去最大值就看成一条边免费,免费的边建 阅读全文
摘要:
题目链接 https://ac.nowcoder.com/acm/problem/50403 题意 求 \(a\) 到 \(b\) 路径上编号最小的割点。 思路 以$a$为根节点建树,则当前割点$v$是否在路径上其时间戳到达时间必须比$b$晚,也就是$dfn[b] >= dfn[v]$. AC代码 阅读全文
摘要:
题目链接 https://ac.nowcoder.com/acm/problem/20099 题意 一张无向图, 问至少设置几个点使得当删除一个点后其他所有点能到达设置点,以及方案数。 思路 点不能设置在割点, 所以对于断开割点形成的所有双连通分量中,进行分类讨论。 AC代码 #include<bi 阅读全文
摘要:
题目链接 https://codeforces.com/problemset/problem/1468/J 题意 给定一张无向图,你有一个操作是使某一边的边权加一或减一。要求一个图的生成树,树的所有边的边权的最大值恰好为k,求最小的操作数。 思路 首先把所有小于等于 \(k\) 的边都选上,那么此时 阅读全文
摘要:
题目链接 https://atcoder.jp/contests/arc111/tasks/arc111_a 思路 可以看成对 \(M^2\) 取模。 AC代码 #include<bits/stdc++.h> using namespace std; typedef long long ll; co 阅读全文