11 2023 档案

摘要:先考虑 n105。 设 fi 表示钦定第 i 天不跑步,前 i 天结束后能量值最高可以达到多少, 枚举上一次不跑步是在哪天,则有转移 fi=maxij1kfj+v(j+1,i1)d(ij1), 其中 v(l,r) 表示 阅读全文
posted @ 2023-11-29 16:40 Jijidawang 阅读(39) 评论(0) 推荐(0) 编辑
摘要:两维独立,问题变为给一堆线段,每个线段可以选中间或两边,求选出的东西之交最大是多少。 按端点把数轴分段,则钦定任意一段在最终的交中,就可以确定所有线段的选择方案。 定义 f(i) 表示钦定 i 段在最终的交中时交的大小,则答案为 maxf(i)。 考虑从左往右依次钦定每段在最终的交中 阅读全文
posted @ 2023-11-21 16:53 Jijidawang 阅读(5) 评论(0) 推荐(0) 编辑
摘要:对原树任意剖一下,然后链数等于叶子数。考虑分别算 i,j 在相同 / 不同链上的贡献。 注意到一个点 i 向链顶 / 链底延伸,形成的树链的 f 值都不超过 O(logV) 种, 记下这些 f 值的位置,记这些树链为 i 的前缀 / 后缀。 考虑 i,j 在相同链上的 阅读全文
posted @ 2023-11-20 21:42 Jijidawang 阅读(20) 评论(0) 推荐(0) 编辑
摘要:设 st 的长度为 L,记 p 为关键点,当且仅当从 p 能引出 3 条互不相交的,长度为 L 的路径, 则只需判断蛇的某一端能否到达关键点。 以某个关键点为根,依次将蛇的两端移动至其子树内最深的叶子, 若某一时刻蛇的两端有祖先关系,则蛇可以到达关键点。 树上倍增维护 阅读全文
posted @ 2023-11-20 21:27 Jijidawang 阅读(10) 评论(0) 推荐(0) 编辑
摘要:可以发现若最终所有棋子移动到 x,则操作次数一定是初始时所有棋子到 x 的距离和除以二, 于是只需求出哪些 x 可以作为最终所有棋子移动到的位置。 设 si 表示 i 子树内初始时棋子个数,fi 表示 i 子树内棋子经过若干操作后到 i 距离和最小是多少,$g_i 阅读全文
posted @ 2023-11-20 21:18 Jijidawang 阅读(4) 评论(0) 推荐(0) 编辑
摘要:时效性 A 观察规律,发现 t 次变换后,二元组变为 (ak+b(k2t),a(1k)+b(2tk+1)),其中 k[1,2t], 显然 a+bc+d 时不可行,a+b=c+d 时只需找到令 a 变为 c 的最少步数,因为此时 b 一定变为 阅读全文
posted @ 2023-11-15 22:17 Jijidawang 阅读(2) 评论(0) 推荐(1) 编辑
摘要:时效性 A 设 S 为关键点构成的虚树覆盖到的点集(注意不是虚树点集), 查询 x 时,可以发现 x 能到的点集就是 S 并上 x 到任意一个关键点(容易发现选哪个关键点都是一样的)的点集。 钦定第一次操作的 x 为根,则 S 即为所有关键点的根链之并, S 的最小值 阅读全文
posted @ 2023-11-15 20:38 Jijidawang 阅读(4) 评论(0) 推荐(1) 编辑
摘要:DS,好! A 放一个极其混乱邪恶的做法( 扫描线,然后变成维护一个集合 S,支持加数、给定 xS(ix)2。 设 ki=(ix)i,于是 $\sum\limits_S(i\oplus x)^2=\sum\limits_ 阅读全文
posted @ 2023-11-09 17:38 Jijidawang 阅读(6) 评论(0) 推荐(1) 编辑
摘要:只能说我技不如人 A 打个暴力发现 rrrrr... yyyyy... xxxxx... yyyyy... rrrrr... yyyyy... xxxxx... 很有前途,所以这样构造就完了。 B 题意杀!下面是人话翻译版: 同学的策略形如 {pn},其中 pi 表示救 i 房间 阅读全文
posted @ 2023-11-06 21:07 Jijidawang 阅读(2) 评论(0) 推荐(1) 编辑
摘要:A 直接造就完了……实在不行看看样例 B 最大值最小,先二分答案 k。 问题变为每条边 (ui,vi,wi) 只能在 kwi 时刻之前走,问有没有 1n 的路径,直接 BFS 即可。 C sto AP 阅读全文
posted @ 2023-11-05 20:59 Jijidawang 阅读(2) 评论(0) 推荐(1) 编辑
摘要:A 写个暴力,你就知道规律了。 B 定义一种局面 {an,m} 的“阶梯” {pn,m},其中 pi,j 表示 (i,j) 右下方所有位置是否与最终状态完全相同。 可以发现这个“阶梯”一定是阶梯状的(连通块边缘形成 (n,1)(1,m) 的格路 阅读全文
posted @ 2023-11-05 19:53 Jijidawang 阅读(1) 评论(0) 推荐(1) 编辑
摘要:A 分解质因数。 B 1,5,7 随便换,先删掉。6 不能动,按 6 划分成若干个段。每个段内,设 2,4,8a 个,3,9b 个, 则这个段的方案数为 (a+ba),即选出 a 个位置依次填入 2,4,8,剩下 b 个位置依次填入 阅读全文
posted @ 2023-11-05 18:05 Jijidawang 阅读(2) 评论(0) 推荐(1) 编辑
摘要:A 双指针,线段树。 B 第一问比较简单,只说第二问。设当前队列大小为 s。 维护 pi 表示 i 时刻插入的数当前在队列中的概率,qi 表示 i 时刻插入的数当前期望被删的时间, 则插入会对 p 单点赋 1T 时刻的删除会对 q 中除最大值的位置加上 $\ 阅读全文
posted @ 2023-11-05 17:42 Jijidawang 阅读(1) 评论(0) 推荐(1) 编辑
摘要:A 截到第一个 1。 B 设最小生成树上 xy 的最大值为 k,那么若边 (x,y) 不在原图中,则其可取 (k,M] 中不在原图中的所有权值。 对最小生成树上每条边统计有多少条不在原图中的边以它为取值区间的左端点,这样可以统计出所有取值区间。 按取值区间从窄到宽依次给边 阅读全文
posted @ 2023-11-05 16:20 Jijidawang 阅读(3) 评论(0) 推荐(1) 编辑
摘要:A 观察发现排序后一定选一个前缀,所以双指针维护一下即可。 B 从前往后依次标边权。 这条边是蓝的:直接把没用过的最小权值给这条边。 这条边是白的:这条边 (u,v) 需要比最小生成树上 uv 的边都大, 所以先把最小生成树上 uv 中没标边权的边按出现顺序依次标上当前没 阅读全文
posted @ 2023-11-05 15:18 Jijidawang 阅读(5) 评论(0) 推荐(1) 编辑
摘要:最水的一篇 A 每段至少包含一个前缀最大值。 B 点分。 C 额,咋构一下就完了…… D 啥玩意,看不懂啊。 阅读全文
posted @ 2023-11-05 14:09 Jijidawang 阅读(1) 评论(0) 推荐(1) 编辑
摘要:A 注意到查询时 {ai|lir}(去重)只会有 210 种,先预处理出每一种的背包数组,可以 bitset 压空间。 现在只需支持修改,以及查询 {ai|lir}(去重),线段树上每个节点 [l,r] 维护 $\{a_i|l\le 阅读全文
posted @ 2023-11-05 12:05 Jijidawang 阅读(5) 评论(0) 推荐(1) 编辑
摘要:A ? B 设 fi,0/1/2 表示 [1,i] 形成的,以 i 结尾的 / 以 i1 结尾的 / 总共的排列方案数。 C 两维独立,问题变为给一堆线段,每个线段可以选中间或两边,求选出的东西之交最大是多少。 按端点把数轴分段,则钦定任意一段在最终的交中,就可以确定所有线段 阅读全文
posted @ 2023-11-05 11:11 Jijidawang 阅读(3) 评论(0) 推荐(0) 编辑
摘要:A 有解的话往直径端点走一定是一组解。 B 手玩一下,可以发现,令 pax,对 i(x,y) 依次执行: 若 pandai0,令 pporai。 之后,若 $p\operatorn 阅读全文
posted @ 2023-11-04 19:58 Jijidawang 阅读(2) 评论(0) 推荐(0) 编辑
摘要:我知道这个很平凡( $$ \begin{aligned} &\sum\limits_{i=1}^n\sum\limits_{j=1}^mf(i)g(j)h(\gcd(i,j))\ =&\sum\limits_{k=1}^{\min(n,m)}h(k)\sum\limits_{\gcd(i,j)=k 阅读全文
posted @ 2023-11-02 17:32 Jijidawang 阅读(7) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示