iefnah06

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2020年5月24日

摘要: URL https://atcoder.jp/contests/agc044/tasks/agc044_c 解法 考虑三进制的 Trie 树 S 操作可以通过打交换儿子的标记实现 R 操作可以从低到高考虑,如果这一位是 $0/1$ 的话直接改成 $1/2$,$2$ 的话改成 $0$ 继续往高位考虑。 阅读全文
posted @ 2020-05-24 22:03 iefnah06 阅读(398) 评论(0) 推荐(0)

2020年5月15日

摘要: URL https://oj.uz/problem/submit/JOI14_fortune_telling2 解法 仔细思考一下操作的实质 考虑每个卡片最后的答案。不失一般性,假设 $A_i < B_i$,考虑某次操作 $T_j$ 的影响: $T_j < A_i$:无事发生 $A_i \le T_ 阅读全文
posted @ 2020-05-15 14:44 iefnah06 阅读(325) 评论(0) 推荐(0)

2020年5月5日

摘要: URL https://onlinejudge.u aizu.ac.jp/problems/3118 解法 定期重构,假设每块的大小是 $S$: 块内询问只有 $O(S)$ 个不同的端点 对相邻端点间建一个支持快速查询的数据结构(按照 $B_i A_i$ 排序,算前后缀最小值) 暴力更新 复杂度 $ 阅读全文
posted @ 2020-05-05 21:33 iefnah06 阅读(141) 评论(0) 推荐(0)

2020年4月30日

摘要: URL http://acm.hdu.edu.cn/showproblem.php?pid=5299 解法 用扫描线建出树的结构,然后套用树上删边游戏的做法。 实现 https://ideone.com/eijX0R 阅读全文
posted @ 2020-04-30 11:31 iefnah06 阅读(78) 评论(0) 推荐(0)

2020年4月22日

摘要: 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 阅读全文
posted @ 2020-04-22 23:46 iefnah06 阅读(163) 评论(0) 推荐(0)

2020年4月21日

摘要: URL https://community.topcoder.com/stat?c=problem_statement&pm=15873 解法 先 DP 算出不走回头路的方案数,然后减去三角形、四边形的方案数。 实现 路上 阅读全文
posted @ 2020-04-21 20:05 iefnah06 阅读(141) 评论(0) 推荐(0)

摘要: 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 阅读全文
posted @ 2020-04-21 20:01 iefnah06 阅读(129) 评论(0) 推荐(0)

摘要: URL https://community.topcoder.com/stat?c=problem_statement&pm=15700 解法 先特判 $G N$ 的情况,下面假设 $G \le N$。 考虑暴力的 DP,记 $L(i,c)$ 为考虑了 $[i,N)$ 这个后缀,第一个字符为 $c$ 阅读全文
posted @ 2020-04-21 19:56 iefnah06 阅读(154) 评论(0) 推荐(0)

2020年4月20日

摘要: Cave Paintings 从下往上,把这行的每个格子向左右/下一行同一列的格子连边,如果连出环了就把环上的点当作一个等价类缩起来。最后会剩下若干棵树,可以用 DP 计算每棵树的答案。 具体实现时可以直接并查集,合并两个连通快时方案数相乘。 https://ideone.com/209nvl No 阅读全文
posted @ 2020-04-20 21:50 iefnah06 阅读(186) 评论(0) 推荐(0)

摘要: Delegation 二分答案,在递归时考虑保留儿子里尽可能长的一条路径,这个可以继续二分。 https://ideone.com/q2mbJR Equilateral Triangles 对于每个等边三角形,考虑在它的“左上角”计数(如果不存在的话可以通过多次旋转得到)。 考虑三个点 $A,B,C 阅读全文
posted @ 2020-04-20 12:01 iefnah06 阅读(284) 评论(0) 推荐(0)