摘要: 可爱捏 题意 给出 \(n\) 个整数 \(a_i(1\le i\le n)\)。 求最多选出多少个数,使她们两两的乘积不为完全立方数。 \(n\le 10^5,a_i \le 10^5\)。 思路 可以先将 \(a_i\) 分解质因数,将所有指数 \(\bmod 3\),两个数相乘为完全平方数即对 阅读全文
posted @ 2024-11-15 16:45 maniubi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 马 题意 有 \(n\) 个数,初始全为 \(1\)。有 \(3\) 种操作: 将任意一个数 \(a \leftarrow a+50\); 将任意一个数 \(a \leftarrow a + 20\); 将任意一个数 \(a \leftarrow a \times 2\)。 给出每种操作的个数,你可 阅读全文
posted @ 2024-11-15 16:04 maniubi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: [NOIP 2024 模拟12]序列 题意 给出长度为 \(n\) 的序列 \(a\),每次操作给出 \(l,r,k\),把 \([l,r]\) 进行 \(k\) 次循环位移。 每次操作结束后查询整个序列是否存在三元上升子序列,即是否存在 \(i<j<k,a_i<a_j<a_k\)。 思路 区间循环 阅读全文
posted @ 2024-11-12 21:46 maniubi 阅读(15) 评论(0) 推荐(0) 编辑
摘要: Educational Codeforces Round 80 (CF1288) A. Deadline 题意 给出正整数 \(n,d\),求不等式 \(x+\lceil \frac{d}{x+1}\rceil \le n\) 是否有非负整数解。 思路 先不考虑上取整, \[x+ \frac{d}{ 阅读全文
posted @ 2024-11-11 22:50 maniubi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 矩阵游戏 题意 给出一个 \(n\) 行 \(m\) 列的矩阵,进行恰好 \(k\) 次操作。 每次操作为选择一行或一列,分数为该行/列的和,操作结束后该行/列整体减去 \(p\)。 求最大分数。 思路 先有一个错误的贪心,即每次选择行和列中最大的一个操作,但这样有下面的 hack: 1 4 4 1 阅读全文
posted @ 2024-11-04 21:19 maniubi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 难题 题意 定义 \(f(i)\) 为非 \(i\) 因数的最小正整数,给出 \(n\),求 \(\sum_{i=1}^{n} f(i) \bmod 10^9+7\)。 思路 显然 \(f(i) \ge 2\)。 若 \(f(i)=x\),则 \(f(i)\) 一定为 \(\text{lcm}(1, 阅读全文
posted @ 2024-11-04 20:53 maniubi 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 路程 题意 构造一个点数不超过 \(18\),边数不超过 \(45\) 的有向无环图,满足: 入度为 \(0\) 的点只有 \(1\),出度为 \(0\) 的点只有 \(114\); 从 \(1\) 到 \(114\) 的所有路径的边权和恰好为 \([0,n]\)。 思路 先想到可以把每个数二进制拆 阅读全文
posted @ 2024-11-04 20:28 maniubi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 后缀数组求 LCP 和相关证明 一些定义 \(\text{SA}(i)\) 排名为 \(i\) 的后缀左端点;\(\text{rank}(i)\) 左端点为 \(i\) 的后缀排名;\(\text{suf}(i)\) 左端点为 \(i\) 的后缀; \(\text{lcp}(S,T)\),串 \(S 阅读全文
posted @ 2024-11-01 15:56 maniubi 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 倍增求后缀数组 1. 一些定义 后缀 \(i\):子串 \([\text{len}(S)-i+1,\text{len}(S)]\); \(\text{SA}(i)\):排名为 \(i\) 的后缀; \(\text{rank}(i)\):后缀 \(i\) 的排名,\(\forall i>n,\text 阅读全文
posted @ 2024-10-31 21:22 maniubi 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 字符串大师 题意 一个串 \(T\) 是 \(S\) 的循环节,当且仅当存在正整数 \(k\),使得 \(S\) 是 \(T^k\) (\(T\) 重复 \(k\) 次)的前缀。 给出字符串 \(S\) 每个前缀的最短循环节,求出字典序最小的 \(S\)。 思路 记字符串 \(S\) 的最短循环节为 阅读全文
posted @ 2024-10-31 11:44 maniubi 阅读(4) 评论(0) 推荐(0) 编辑