摘要: ABC397 A 直接判温度在哪个区间内即可。 submission. B 因为 \(s\) 的长度只有 \(100\),所以直接暴力地循环,每轮找到第一个不符合要求的字符,在它前面插入 i 或者 o 即可,显然插入有 \(O(n)\) 轮,故总时间复杂度 \(O(n^2)\)。 submissio 阅读全文
posted @ 2025-03-15 17:33 Water_M 阅读(522) 评论(0) 推荐(1)
摘要: ABC396 A 枚举 \(i\) 从 \(1\) 到 \(n-2\),如果存在 \(a_i=a_{i+1}=a_{i+2}\) 就 Yes,否则就 No。 submission. B 维护一个空栈,如果栈被弹空就意味着只剩初始的 \(100\) 个 \(0\) 了,查询时输出 \(0\);否则就正 阅读全文
posted @ 2025-03-08 22:32 Water_M 阅读(108) 评论(0) 推荐(0)
摘要: 记限制序列为 \(a\),排列数为 \(A_n^m\)。 对于字典序的限制,我们一位一位填,考虑第一次与 \(a\) 出现不同的是哪一位。 具体地,我们从 \(1\) 到 \(k\) 枚举 \(i\),要填的数 \(v\) 只有两种可能: \(v = a_i\)。 \(v < a_i\) 且 \(v 阅读全文
posted @ 2025-03-08 17:54 Water_M 阅读(27) 评论(0) 推荐(0)
摘要: ABC395 A 判断有没有 \(1 \le i < n\),满足 \(a_i \ge a_{i+1}\)。有则 No,没有则 Yes。 submission. B 随便递归一下,每层传入当前要覆盖的子矩阵的左上角坐标 \((x, y)\),正方形大小 \(n\),以及需要覆盖的字符 \(p\)。每 阅读全文
posted @ 2025-03-01 23:08 Water_M 阅读(81) 评论(0) 推荐(0)
摘要: C1 没有修改。 我们直接模拟人排队的过程。枚举 \(b\) 的每一个元素 \(b_i\),看看当前 \(a\) 数组的头部是不是和 \(b_i\) 相等,若是,将 \(a_i\) 移到某个位置;否则就 No。 问题来了,每次怎么移动 \(a_i\) 呢? 我们发现并不需要显式地移动,只需把用过的 阅读全文
posted @ 2025-02-24 23:11 Water_M 阅读(26) 评论(0) 推荐(0)
摘要: ABC394 A 枚举串中的所有字符,是 \(2\) 的输出就行。 submission. B 就按题意说的,按长度为关键字排序即可。 submission. C 我们使用 std::string::find() 函数,每次从上一次查找到的 WA 的位置的前一个(因为可能会产生新的 AC),总时间复 阅读全文
posted @ 2025-02-22 23:16 Water_M 阅读(121) 评论(0) 推荐(0)
摘要: 首先,段数等于相邻不等的数量加一。 如:0011101101 中,有 \((2,3),(5,6),(6,7),(8,9),(9,10)\) 相邻不等,于是段数为 \(6\)。 有了这个转化,我们就可以拆贡献到每一组【相邻不等】上了。 我们计算一个下标 \(i\) 的贡献: 找到一个 \(j \in 阅读全文
posted @ 2025-02-22 00:01 Water_M 阅读(44) 评论(0) 推荐(0)
摘要: ABC393 A 分四类输出即可。 Takahashi Aoki result fine fine 4 fine sick 3 sick fine 2 sick sick 1 submission. B \(n\) 很小,\(O(n^3)\) 枚举 \(i,j,k\),判断是否满足 \(j-i=k- 阅读全文
posted @ 2025-02-15 23:08 Water_M 阅读(100) 评论(0) 推荐(0)
摘要: 一道根号分治的典题。 因为 polylog 不好做(没有有效的数据结构维护许多个一组的区间并),故考虑根号算法。 指定一个分割点 \(B\),我们把在记录中出现次数大于等于 \(B\) 次的人称为【大人】,出现次数小于 \(B\) 次的人称为【小人】。 现在询问分为两种。 【小人】和【小人】询问。 阅读全文
posted @ 2025-02-14 23:06 Water_M 阅读(33) 评论(0) 推荐(0)
摘要: 考虑先从简单情况,即只有一个 \(s,t,l\) 的限制入手。 我们求出 \(s\) 到 \(t\) 的最短路,这条路径无论从限制角度还是从最大删边的角度都是最优的。 现在考虑两个限制。 这时,两条路径可能会有重复部分。我们用 BFS 预处理出全最短路径,然后枚举重复部分的起始点 \(u\),终止点 阅读全文
posted @ 2025-02-12 09:33 Water_M 阅读(21) 评论(0) 推荐(0)