摘要:
C - Fox And Names 拓扑排序 要自定义字典序使给出的字符串是按字典序递增的顺序 可对于前后两个字符串可找到一组字母间的关系,转化为差分约束问题 #include <iostream> #include <cstring> #include <algorithm> #include < 阅读全文
摘要:
D - Substring 拓扑排序 #include <iostream> #include <cstring> #include <algorithm> #include <vector> #include <cmath> #include <queue> using namespace std 阅读全文
摘要:
D - Present 位运算 + 思维 + 二分(双指针) 按位考虑,第 \(k\) 位是 0 还是 1 只跟前 \(k\) 位有关,因此算第 \(k\) 位的答案时可对 \(a\) 数组的元素 \(\mod 2^{k+1}\) 赋给 \(b\) 若 \(b_i+b_j\) 第 \(k\) 位是 阅读全文
摘要:
E - Colorings and Dominoes DP + 算贡献 首先观察到每一行的贡献和每一列的贡献是独立的,所以可以单独算出每一行和每一列的贡献之和 对某一行考虑 设 \(f[i][0]\) 为第 \(i\) 个元素可作为放骨牌的第一个位置的概率,\(f[i][1]\) 为第 \(i\) 阅读全文
摘要:
D - The Number of Pairs 数论,线性筛 给定 \(c,d,x\) 求满足 \(c*[a,b]-d*(a,b)=x\) 的 \((a,b)\) 对数 (当 \(a\neq b\) 时,\((a,b),(b,a)\) 算两对) 记 \(lcm=[a,b],\;gcd=(a,b)\) 阅读全文
摘要:
双连通分量 边双连通分量 桥 :去掉该边后,图变的不连通 边双连通分量(E-DCC):极大的、不包含桥的连通块 性质: 一个边双连通分量内的任意两个点,之间至少存在两条没有公共边的路径 对边双连通分量缩点后,剩下的边都是桥,每一个连通块都是一颗树 对边双连通分量缩点后,若要把缩点后的图变成一个双连通 阅读全文
摘要:
D - Toss a Coin to Your Graph... 二分 + 判环 + DAGDP 最大值最小化可以想到二分答案 check过程为只给小于等于答案的点之间连边,虽然 k 很大,但如果存在环则一定可以,不存在环就求当前图的最长路,如果最长路 ⇐ k - 1 则可以 判环和求最长路都可用拓 阅读全文