摘要:URL http://acm.hdu.edu.cn/showproblem.php?pid=5299 解法 用扫描线建出树的结构,然后套用树上删边游戏的做法。 实现 https://ideone.com/eijX0R
阅读全文
04 2020 档案
摘要:Redistricting 计 $$ P_i = \sum_{j=1}^{i}[S_i=\texttt{H}] [S_i=\texttt{G}] $$ 计 $F_i$ 为考虑了 $[1,i]$ 这个前缀的最优解,那么 $$ F_i = \min_{i K+1<j<i} F_j + [P_i \le
阅读全文
摘要:URL https://community.topcoder.com/stat?c=problem_statement&pm=15873 解法 先 DP 算出不走回头路的方案数,然后减去三角形、四边形的方案数。 实现 路上
阅读全文
摘要:URL https://community.topcoder.com/stat?c=problem_statement&pm=15963&rd=17853 解法 计 $dp(v,0/1,0/1,0/1)$,三个 $0/1$ 分别表示 $v$ 是否在 IS 内,子树内 DFS 最小的叶子是否在 IS
阅读全文
摘要:URL https://community.topcoder.com/stat?c=problem_statement&pm=15700 解法 先特判 $G N$ 的情况,下面假设 $G \le N$。 考虑暴力的 DP,记 $L(i,c)$ 为考虑了 $[i,N)$ 这个后缀,第一个字符为 $c$
阅读全文
摘要:Cave Paintings 从下往上,把这行的每个格子向左右/下一行同一列的格子连边,如果连出环了就把环上的点当作一个等价类缩起来。最后会剩下若干棵树,可以用 DP 计算每棵树的答案。 具体实现时可以直接并查集,合并两个连通快时方案数相乘。 https://ideone.com/209nvl No
阅读全文
摘要:Delegation 二分答案,在递归时考虑保留儿子里尽可能长的一条路径,这个可以继续二分。 https://ideone.com/q2mbJR Equilateral Triangles 对于每个等边三角形,考虑在它的“左上角”计数(如果不存在的话可以通过多次旋转得到)。 考虑三个点 $A,B,C
阅读全文
摘要:URL https://codeforces.com/contest/1336/problem/F 解法 考虑枚举路径交的一个端点 $v$,对 $v$ 维护子树内向上的所有路径,在合并时计算贡献(大概就是根据当前点到要加入的路径 LCA 的距离与 $K$ 的大小关系来算哪些集合的路径是合法的)。 注
阅读全文
摘要:URL https://codeforces.com/contest/1333/problem/F 解法 记 $m(n)$ 为 $n$ 的最大非平凡因子(规定 $m(1)=1$)。 考虑某个 imperfection 最小的集合 $a_0,a_1,\ldots,a_{k 1}$,如果存在 $a_i$
阅读全文
摘要:URL https://codeforces.com/problemset/problem/765/F 解法 考虑离线做法。 移动右端点 $r$,维护每个左端点的答案,我们想要知道选中的其中一个数字为 $r$ 时,另外一个数字的位置取那些会对答案产生影响。 不失一般性,先假设另外一个位置的值不超过
阅读全文
摘要:URL https://codeforces.com/contest/1333/problem/E 解法 $N \le 2$ 时无解。 $N=3$ 时搜索。 $N \ge 4$ 时,把样例的列翻转一下,使得 $1$ 在 $(2,2)$ 的位置。接下来把样例的矩阵放在左上角(加上一个偏移量使得里面包含
阅读全文
摘要:URL https://atcoder.jp/contests/arc070/tasks/arc070_c 解法 考虑 DP,计 $dp_i(x)$ 为考虑了前 $i$ 个矩形,最后一个矩形的左端点在 $x$ 的最小代价。通过归纳法可以证明,把 $dp_i$ 看成关于 $x$ 的函数的话,函数是一个
阅读全文
摘要:URL https://codeforces.com/contest/650/problem/D 解法 考虑修改每个位置 $i$ 后序列的 LIS,对两种情况取较大值: LIS 经过 $i$,可以直接计算 LIS 不经过 $i$,就是要求原序列忽略 $i$ 的 LIS。考虑原序列中经过每个位置的所有
阅读全文
摘要:题意 下面的标号都是 0 indexed 的。 有一个 $N$ 个点的图,一开始没有边。 接下来进行 $Q$ 次加边操作,每次连接两个点,每次操作后你要回答:计 $C_i$ 为 $i$ 号节点所在连通块的点集,你要找到一个长度最小的区间 $[l,r]$ 满足 $\bigcup_{k=l}^{r} C
阅读全文
摘要:URL https://codeforces.com/contest/1326/problem/E 解法 在加入炸弹的过程中答案显然不升,且每次剩下的数都是上一次的子集。 考虑当前的答案是 $x$,已经删除了所有 $ x$ 的数,判断 $x$ 是否被删除。充要条件是: 最右的 $\ge x$ 的数的
阅读全文
摘要:URL https://codeforces.com/contest/1326/problem/F2 解法 对于长度为 $N 1$ 的二进制串 $s$,先算出 $f(s)$ 表示为 $1$ 的位置必定有边,为 $0$ 的位置可能有边的方案数。原问题的答案可以通过容斥算出。 注意到 $f(s)$ 的值
阅读全文
摘要:URL https://codeforces.com/contest/1239/problem/C 解法 考虑模拟每一个(有事件发生的)时刻发生的事件。 实现时可以维护当前队列中的人(注意维护顺序),正在等待的人。具体见代码。 实现 https://ideone.com/kjtz5M
阅读全文

浙公网安备 33010602011771号