摘要: 观察最后满足条件的状态(如下),可以发现最后状态一定为前段是连续的 b,后段是连续的 a。 [样例1] [样例2] ab aab bba bbbbaa 再观察 ab 和 bba,可以发现变化的实质就是交换 a 和 b 的位置,并将 b 的个数增加 \(1\)(乘以 \(2\))。 所以从后往前遍历字 阅读全文
posted @ 2025-08-18 19:08 cqbzcjh 阅读(12) 评论(0) 推荐(0)
摘要: 分析 可以发现,当我们求出 \(l!\),只需要乘上 \((l+1)\) 就可以求出 \((l+1)!\)。 而因为数据范围太大,需要不断地将 \(sum \bmod k\)。 Code #include<bits/stdc++.h> using namespace std; long long l 阅读全文
posted @ 2025-08-18 19:08 cqbzcjh 阅读(3) 评论(0) 推荐(0)
摘要: 题面 分析 题目要求我们求当前可能的最小的乘客人数 可以发现,要使现在的乘客人数最小,初始的乘客人数也必须是可能的最小的状态 我们将乘客变化的信息存储在 \(a\) 数组里,那么我们可以用 \(sum\) 数组对 \(a\) 数组求前缀和,\(sum_i\) 表示在第 \(i\) 个时间点上相对于初 阅读全文
posted @ 2025-08-18 19:06 cqbzcjh 阅读(3) 评论(0) 推荐(0)