会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
simonG
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
10
···
19
下一页
2024年8月14日
2024.8.14 test
摘要: A 一棵树,你每天可以选择不超过 \(m\) 个祖先都被选择的点,问最少多少天选完。\(n\le 10^5\)。 考虑贪心,每次选出子树深度最大的 \(m\) 个点或子树大小最大的 \(m\) 个点都是对的。 B 一棵树 \(n\le 5e5\),选若干出来,对于每个点,如果其儿子有选,那么不能被选
阅读全文
posted @ 2024-08-14 22:07 s1monG
阅读(18)
评论(0)
推荐(0)
2024年8月13日
2024.8.13 test
摘要: A \(n\) 个人之间有若干认识关系,你要把这些人划分为两个集合,使得集合里的每个人都认识偶数个人。 求方案数,\(n\le 1000\)。 设每个人的状态为 \(0/1\) 表示两个集合,那么第 \(i\) 个人在其集合里认识的人个数是 \(\sum_{j}(x_i\otimes x_j\oti
阅读全文
posted @ 2024-08-13 22:49 s1monG
阅读(17)
评论(0)
推荐(0)
2024.8.12 test
摘要: A \(n\times n\) 的平面上有 \(m\) 条通道,从 \((a_i,b_i)\) 到 \((c_i,d_i)\),代价为 \(|a_i-c_i|+|b_i-d_i|-1\)。 同时你可以花 \(1\) 的代价移动到四联通的点。问所有点之间两两最短距离之和。\(n\le 1e9,m\le
阅读全文
posted @ 2024-08-13 22:49 s1monG
阅读(21)
评论(0)
推荐(0)
2024年8月8日
2024.8.8 test
摘要: A 对于长度为 \(2^n\) 的序列 \(A,B\),求 \(c_{k}=\max_{i|j}a_i+b_j\),\(n\le 18\)。 考虑分治:每次分成 \(A_0,A_1,B_0,B_1\)。 那么,\(C_0=\max(A_0+B_0),C_1=\max(A_0+B_1,A_1+B_0,
阅读全文
posted @ 2024-08-08 15:27 s1monG
阅读(15)
评论(0)
推荐(0)
2024年8月7日
2024.8.7 test
摘要: A 一个基环树上,给出每条边可以存在的时间,你还有 \(L\) 的时间可以分配给边。 你要安排边开始存在的时间,使得联通的时间最长,求这个值。\(n\le 10^5\)。 先不考虑 \(L\)。如果是树,那么答案是边存在时间的最小值。 如果是基环树,那么把环上次小边加上最小边,并删掉最小边,变成树求
阅读全文
posted @ 2024-08-07 18:32 s1monG
阅读(26)
评论(0)
推荐(0)
2024年8月6日
2024.8.6 test
摘要: 以后不记录躺尸题了。 B 有 \(n\) 个序列对应 \(n\) 个人,每个序列长度为 \(k_i\)。你可以花费 \(a_{i,j}\) 的时间把第 \(i\) 个人从 \(j-1\) 提升到 \(j\) 级。 求前 \(m\) 个时刻,每个时刻里每个人级数的和的和最大值。\(\sum k\le
阅读全文
posted @ 2024-08-06 15:43 s1monG
阅读(11)
评论(0)
推荐(0)
2024年8月5日
2024.8.5 test
摘要: A 你可以花费 \(x^2\) 的代价使 \(A_i\) 加上 \(x\),\(x\ge 0\),最后再加上代价为 \(c\sum |A_i-A_{i-1}|\),问最小代价。 \(n\le 10^5\)。 我们可以把序列分成若干“山峰”以及“山谷”,山峰是不会加的。考虑从山谷开始做,即每次取出最小
阅读全文
posted @ 2024-08-05 16:55 s1monG
阅读(16)
评论(0)
推荐(0)
2024年8月3日
2024.8.3 test
摘要: A 有序列 \(A\),你可进行若干次操作:选定 \(A_i,A_j\),使 \(A_i=\gcd(A_i,A_j)\),\(A_j=lcm(A_i,A_j)\)。 \(n,A_i\le 10^6\)。 把每个质因数独立开,发现无论怎么操作,每个数某质因数的次数的集合不变。 所以贪心地,从大往小放置
阅读全文
posted @ 2024-08-03 15:59 s1monG
阅读(28)
评论(0)
推荐(0)
2024年8月2日
2024.8.2 test
摘要: A 有长度为 \(n\) 序列 \(A\),你要把构造长度相同的序列 \(B\) 使得 \(\sum B_i=m\)。 满足随机打乱 \(B_i\) 后,期望 \(\sum [A_i>B_i]\) 最小,求这个值。\(n\le 1000,m\le 5000\)。 我们考虑背包,也就是 \(0\sim
阅读全文
posted @ 2024-08-02 19:46 s1monG
阅读(42)
评论(0)
推荐(0)
2024年8月1日
后缀结构2
摘要: 1. 后缀平衡树 引入 后缀平衡树的每个节点维护一个后缀,平衡树中序遍历出来的就是后缀数组。 我们假设已经维护好了 \(S\) 的后缀平衡树,现在从前插入一个字符 \(c\),现在要把 \(c+S\) 插入。 假设我们现在比较 \(c+S\) 和 \(A\) 的大小,若首字母不同,那么已经比较出;
阅读全文
posted @ 2024-08-01 21:05 s1monG
阅读(20)
评论(0)
推荐(0)
2024.8.1 test
摘要: A \(n\) 个点的完全图,\(i\to j(i<j)\) 的边权是 \(u_j-u_i\),问最小生成树。\(n\le 3e5\)。 考虑 boruvka 算法。boruvka 算法是重复以下过程,直到只有一个连通块。 找到所有连通块的连向外面的最小边,并把这些边加入最小生成树。不难发现这是最多
阅读全文
posted @ 2024-08-01 21:04 s1monG
阅读(13)
评论(0)
推荐(0)
2024年7月31日
2024.7.31 test
摘要: A 给定序列 \(S\),一开始只有一个数 \(x\) ,每次操作是把每个 \(S_i\) 替换为 \(S_i\) 的所有约数(从小到大排序) 求 \(k\) 次操作后序列前 \(m\) 的位置的和。\(x,k\le 10^{12},m\le 10^7\)。 因为把每个 \(S_i\) 替换为 \(
阅读全文
posted @ 2024-07-31 16:17 s1monG
阅读(36)
评论(0)
推荐(0)
2024年7月30日
2024.7.30 test
摘要: A 有一个数 \(n\) 和 \(m\) 种操作,第 \(i\) 次操作使得 \(n\gets n/A_i\),问最多遍历多少个数。 \(n\le 10^5,m\le 10\)。 不难发现暴力即可通过。 B 给定集合 \(S\),对于每个 \(i\in [1,m]\) 你需要求出选择数最多和最少的值
阅读全文
posted @ 2024-07-30 15:18 s1monG
阅读(24)
评论(0)
推荐(0)
2024年7月29日
2024.7.29 test
摘要: A 给出 \(n,m\),你要求对于所有长度为 \(n\) 的非负整数序列 \(A,B\) 中,满足 \(\sum A_i=\sum B_i=m\), 求 \((\sum |A_i-B_i|)^2\) 的总和。\(n\le 500,m\le 10^5\)。 首先我们发现 \(\sum (A_i-B_
阅读全文
posted @ 2024-07-29 20:07 s1monG
阅读(28)
评论(0)
推荐(0)
2024年7月28日
2024.7.28 test
摘要: A 你有长度为 \(2n\) 的排列,每次操作是:把 \(a_1,a_2,...,a_{2n}\) 变成 \(a_1,a_{n+1},a_2,a_{n+2},...,a_{n},a_{2n}\)。 问多少次操作后序列回到最初的状态。\(n\le 10^{14}\)。 我们先把 \(1\) 开始标号改
阅读全文
posted @ 2024-07-28 21:25 s1monG
阅读(36)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
10
···
19
下一页
公告