随笔分类 -  题解

摘要:思路 首先记所有 \(1\) 的数量为 \(num\),那么显然有当 \(n \bmod num \neq 0\) 时无解。那么考虑有解的时候该怎么办。 显然对于每一个 \(a_i\) 序列中,最终 \(1\) 的数量为 \(\frac{num}{n}\),记作 \(t\);并记 \(cnt_i\) 阅读全文
posted @ 2024-01-13 16:35 BeautifulWish 阅读(34) 评论(0) 推荐(0)
摘要:思路 假设原题目中的 \(n\) 在本文中为 \(num\),则原长方形的长 \(m = f_{num + 1}\) 和宽 \(n = f_{num}\)。 显然对于最初始的长方形,显然是要将一个 \(f_{num} \times f_{num}\) 的长方形丢进去的,并且要么放最左边,要么放在最右 阅读全文
posted @ 2023-12-26 14:05 BeautifulWish 阅读(21) 评论(0) 推荐(0)
摘要:比较符合 CCF 造数据水平的题。 思路 首先可以用两个 vector<pair<int,int>> v[N] 分别将每一行、每一列的元素的权值与编号存储下来。 那么可以对所有的 \(v_i\) 按照权值从小到大排序。那么发现对于所有的满足 v[i][p].fst < v[i][q].fst 的 \ 阅读全文
posted @ 2023-12-02 15:40 BeautifulWish 阅读(37) 评论(0) 推荐(0)
摘要:思路 暴力化简公式题。 假定 \(b_{i}^{b_j} = b_{j}^{b_{i}}\) 成立,那么有: \[2^{a_i \times 2^{a_j}} = 2^{a_j \times 2^{a_i}}\\ a_i \times 2^{a_j} = a_j \times 2^{a_i}\\ \ 阅读全文
posted @ 2023-11-20 23:07 BeautifulWish 阅读(82) 评论(0) 推荐(0)
摘要:大家好,我是毒瘤,喜欢用玄学算法过题。 发现题解区没有这个做法,于是来发一篇。 思路 不难发现如果一个点对 \((u,v)\) 的距离为 \(d\),那么在这棵树以 \(u\) 为根时,\(v\) 的深度为 \(d\)。于是考虑换根 DP。 首先思考如何计算答案。显然我们可以将查询离线下来,然后当换 阅读全文
posted @ 2023-11-15 18:43 BeautifulWish 阅读(33) 评论(0) 推荐(0)
摘要:思路 带权并查集模板。 如果对于一个三元组 \((a,b,c)\) 如果它能够添加到 \(S\) 中一定满足如下条件中的一条: \(X_a,X_b\) 满足其中有一个是「不确定」的。在这里 \(X_i\)「不确定」指 \(X_i\) 没有与其它的任意 \(X_j\) 有关系 。 \(X_a,X_b\ 阅读全文
posted @ 2023-11-13 16:05 BeautifulWish 阅读(83) 评论(0) 推荐(0)
摘要:板子题,模拟赛场切了。 思路 线段树换根板子题。 因为需要求每一个点的答案,所以定义 \(dp_i\) 表示以 \(i\) 为根的最长距离。 考虑将一个点 \(v\) 转化为根,树的形态会发生什么变化(假设 \(v\) 的父亲节点是 \(u\))。 发现在 \(v\) 子树中的节点,距离都会减少 \ 阅读全文
posted @ 2023-11-04 14:03 BeautifulWish 阅读(30) 评论(0) 推荐(0)
摘要:思路 定义 \(d_{i,j}\) 表示从 \(1\) 走到 \(i\),并且满足 \(t \bmod k = j\) 的最小的符合题意的 \(t\)。 然后就可以直接跑一遍 Dijkstra 即可。 当要计算一条 \(u \to v\) 的边 \(w\) 时,如果当前时间不够无法达到 \(w\), 阅读全文
posted @ 2023-10-29 00:49 BeautifulWish 阅读(459) 评论(0) 推荐(0)
摘要:思路 大模拟,按照题意模拟即可。 首先按照 \(\Delta\) 的取值分为 \(3\) 类: \(\Delta < 0\)。 \(\Delta = 0\)。 \(\Delta > 0\)。 对于第 1 种情况,根据题意,输出 NO。 对于第 2 种情况,原方程只会有一个解为 \(\frac{-b} 阅读全文
posted @ 2023-10-29 00:36 BeautifulWish 阅读(242) 评论(0) 推荐(0)
摘要:思路 首先由一个显然的贪心,对于每一个站点 \(i\),它显然会只会加刚好到下一个满足 \(d_i > d_j\) 的站点 \(j\)。 但是这个贪心是由瑕疵的,因为我们只能加正整数的油,所以说难免会有多出的部分,所以需要特殊处理此部分。 那么求一个位置之后第一个大于它的数,可以直接用单调栈维护即可 阅读全文
posted @ 2023-10-29 00:25 BeautifulWish 阅读(242) 评论(0) 推荐(0)
摘要:思路 首先可以发现每一次会减少的数量都是可以计算出来的,为 \(1 + \lfloor \frac{n - 1}{3} \rfloor\)。 那么直接暴力枚举,当 \(n\) 变为 \(0\) 时结束,不难发现复杂度是 \(\Theta(n^{\frac{2}{3}})\) 级别的。 考虑第二问的答 阅读全文
posted @ 2023-10-27 13:13 BeautifulWish 阅读(201) 评论(0) 推荐(0)
摘要:CCF 出的原题观摩一下。 思路 首先可以用一个 Trie 来维护。 在这里对本文中的一些变量做一下说明。 \(p\) 表示当前维护的 Trie 中,指向的元素编号。 \(t_i\) 表示在 Trie 中编号为 \(i\) 的元素在原序列中的值。 \(f_i\) 表示在 Trie 中编号为 \(i\ 阅读全文
posted @ 2023-10-24 18:46 BeautifulWish 阅读(44) 评论(0) 推荐(0)
摘要:这次 CCF 的行为过于迷惑了。 思路 首先发现只会有 \(10^5\) 种密码,考虑枚举它们,然后去 check。 假设当前密码是:\(p_1,p_2,p_3,p_4,p_5\)。如果它能从对于所有 \(1 \sim n\) 种错误的密码按照题目所述的操作得到,那么此密码就是合法的。 假设我们现在 阅读全文
posted @ 2023-10-22 22:28 BeautifulWish 阅读(204) 评论(0) 推荐(0)
摘要:思路 发现如果一个字符串中有长度大于等于 \(2\) 回文子串,必定有长度为 \(2\) 的回文子串或长度为 \(3\) 的回文子串,并且形如:aa 和 aba。 所以考虑用线段树这两种情况。维护一段区间的最左、次左、最右、次右的元素,同时用两个标记变量 \(f_1,f_2\) 分别表示这个区间中是 阅读全文
posted @ 2023-10-19 10:46 BeautifulWish 阅读(49) 评论(0) 推荐(0)
摘要:思路 首先,可以转化题意,找到一个极长的区间 \([l,r]\) 使得(其中 \(mx_i\) 表示 \([l,r]\) 区间中属性 \(i\) 的最大值): \[\sum_{i = 1}^{m}mx_i \leq k \]显然对于这个东西当 \(l,r\) 发生移动时,是极其好维护的,所以想到双指 阅读全文
posted @ 2023-10-17 20:06 BeautifulWish 阅读(16) 评论(0) 推荐(0)
摘要:模拟赛最后 \(15\) 分钟想到的做法。 思路 首先有一个显然的贪心策略:我们放炸弹的地方要尽可能的使这个炸弹能影响到更多的怪上。 那么我们可以将对于一个怪 \(i\) 能够影响到它的区间表示出来 \([\max(1,l_i - d),a_i + r]\)。 然后将这些区间排个序,可以粗略画出这样 阅读全文
posted @ 2023-10-14 19:26 BeautifulWish 阅读(20) 评论(0) 推荐(0)
摘要:思路 定义 \(dp_i\) 表示将前 \(i\) 个分为若干段的价值总和。容易得到状态转移方程: \[dp_i = \sum_{j = 1}^{i - 1}{dp_j \times (\max_{k = j + 1}^{i}\{a_k\} - \min_{k = j + 1}^{i}\{a_k\} 阅读全文
posted @ 2023-10-04 19:11 BeautifulWish 阅读(24) 评论(0) 推荐(0)
摘要:思路 首先,\(A\) 和 \(B\) 只会移动一个,那么,我们分开来算,我们先假定 \(B\) 会动。 不妨令 \(A\) 与 \(b\) 连边的端点为 \(x,y\)。如果有线段 \(pq\) 能与 \(xy\) 相交,一定满足如下其中一条规律: \(p < x \wedge q > y\) \ 阅读全文
posted @ 2023-10-04 15:15 BeautifulWish 阅读(32) 评论(0) 推荐(0)
摘要:UPD 23.10.3 更新的对思路的描述,以及代码。 思路 对于每一个 \(a_i = 0\),如果我们将它变为 \(x\),都可以直接将 \(i \sim n\) 位置上的前缀和加 \(x\)。 设 \(a_j\) 是 \(a_i\) 后第一个 \(0\),那么,在 \(j\) 时同样有上述规律 阅读全文
posted @ 2023-10-03 13:33 BeautifulWish 阅读(22) 评论(0) 推荐(0)
摘要:思路 题目要求的是 \(\max_{a = 1}^{n}\{\sum_{i = 1}^{a}\sum_{j = 1}^{a}{A_j}\}\),所以我们将 \(\sum_{i = 1}^{a}\sum_{j = 1}^{a}{A_j}\) 化简一下,得: \[i \times A_1 + (i - 阅读全文
posted @ 2023-10-02 13:45 BeautifulWish 阅读(31) 评论(0) 推荐(0)