摘要:
全体栽在 T1 ? T1: 二分一下内存大小然后模拟判断。关键点在于意识到 "解码" 和 "播放" 这两种事件是分开的。用一个 while 循环,每次循环从 "完成某帧的解码"、"开始某帧的解码"、"播放某帧"、"删除某帧" 之间选时间最早的时间执行。 T2: 板题,并查集额外记录个 vector 阅读全文
摘要:
传送门 记 \(L_i=\max_{1\le j<i,t_j+(i-j)\le T}j\),即使得 \(i\) 会越狱的最靠近 \(i\) 的人。则有 \(i\) 不越狱当且仅当 \([L_i,i)\) 放了床垫。 问题转变为放 \(D\) 个床垫,使得最多的 \([L_i,i)\) 内有床垫。 观 阅读全文
摘要:
T1: 法一:\(O(n^2)\) 的 DP。\(dp[i][j][0/1]\) 表示在 \(i\) 的子树内染色,\(i\) 是红/黑,使得每个要求的结点的黑点个数都等于 \(j\)。 法二:\(O(n)\) 的神秘做法。取出最浅的被要求结点,把深度 \(\le\) 它的都染成黑色,其余点都染成红 阅读全文
摘要:
传送门 题意:给定一棵树,选 \(m\) 条路径,最大化覆盖的点个数。\(n\le 10^6\)。 容易想到每次选两个叶子是最优的。 假设有 \(l\) 个叶子,就会选 \(\min(2m,l)\) 个叶子。进一步地,叶子的父亲们也会覆盖 \(\min(2m,cnt)\) 个 …… 从叶子出发进行拓 阅读全文
摘要:
T1: 给出数组 \(f[1\sim m]\),表示 "长度 \(i\) 的 LIS 的末尾最小元素"(也就是原序列的 LIS 长度为 \(m\))。构造一个长度 \(n\) 值域 \(k\) 的原序列满足 \(f\) 的限制,或判定无解。 一种显然的构造方式:把 \(f\) 数组整个放到原序列最后 阅读全文
摘要:
T1: 给定一个二叉树,要求给结点赋值 0/1,使其先序遍历得到的二进制数,减去后序遍历得到的二进制数 最大。 对于一个数 \(i\),它取不取只和它的两个序列中的位置大小关系有关。求出序列,然后依次判断即可。复杂度 \(O(n)\)。 T2: 给定一张图,要求选定一个参数 \(K\):若点 \(u 阅读全文
摘要:
传送门 给定一棵 \(n\) 个节点的树,根节点是 \(1\)。这棵树的每一个叶节点都有一只小蚂蚁。每过 \(1\) 秒钟,可以选择让一些蚂蚁向父节点走一步。注意,两只蚂蚁不能同时在一个除去根节点的节点上。 问这些蚂蚁最少用多少秒的时间,使得所有蚂蚁都走到根节点。 根结点的各个子树独立,因此可以各个 阅读全文
摘要:
论战捆竹竿 题意:给定字符串 \(s\),计数 "串 \(t\) 的长度" 可能的种数有多少种,使得 \(t\) 能被 \(s\) 作为印章印出来,且 \(|t|\le w\)。\(n=|s|\le 5\times 10^5\),\(n\le w\le 10^{18}\)。 第一步: 求出 \(s\ 阅读全文
摘要:
传送门 夏天近了,又到了恋爱的季节,小Q家门前的苹果树上结满了红红圆圆的苹果。 这株苹果树是一个有着\(n\)个结点的有根树,其中结点被依次编号为\(1\)至\(n\)。\(1\)号结点为根,其余每一个结点的父结点一定是某个编号较小的结点。每一个结点上都有一些苹果,第\(i\)个结点上有\(a_i 阅读全文
摘要:
传送门 小 \(C\) 有一棵 \(n\) 个结点的有根树,根是 \(1\) 号结点,且每个结点最多有两个子结点。 定义结点 \(x\) 的权值为: 1.若 \(x\) 没有子结点,那么它的权值会在输入里给出,保证这类点中每个结点的权值互不相同。 2.若 \(x\) 有子结点,那么它的权值有 \(p 阅读全文