摘要: 思路: 杂话:第一眼感觉和 CSP-S 的第一题的思路很像。 很显然,买的每种糖果的数量不是奇数就是偶数,于是可以得到下面的式子: \[ C = 2 \times x + y (x \in \mathbb{N}, y\in {0,1}) \]考虑贪心,因为 \(x\) 有多种选择,所以我们先贪偶数个 阅读全文
posted @ 2025-11-29 18:33 孤独的Bochi 阅读(19) 评论(0) 推荐(0)
摘要: 简要题意 给定一个拥有 \(n\) 个节点的树和 \(m\) 条运动路径,求对于每个点 \(u\) , 在 \(w_i\) 时刻经过此点的玩家数量。 思路 暴力 首先暴力模拟每个玩家的运动路径来计算对每个节点 \(u\) 是否有贡献是不可取的,最劣时(即树退化成链)复杂度为 \(\Theta(nm) 阅读全文
posted @ 2025-11-08 16:36 孤独的Bochi 阅读(7) 评论(0) 推荐(0)
摘要: 概念 树链剖分是把一颗树分割成若干条链,用来维护链上信息的一种算法,常配合线段树,树状数组,平衡树使用。 重链剖分 基本定义 为了更好的理解,我们先给出一些定义: 1.重儿子 :某节点的子节点中子树大小最大的一个节点 2.轻儿子 :某节点除去重儿子的所有节点。 3.重边 :某节点到其重儿子的边 4. 阅读全文
posted @ 2025-10-23 20:05 孤独的Bochi 阅读(6) 评论(0) 推荐(0)
摘要: 思路 由于输入比较大,直接乘肯定会炸掉,所以我们把每个数拆分成质因数相乘的形式,然后指数相加减,但是还是会炸 有一个定理:\(n!\) 中质因子\(p\) 有: \(⌊\frac{n}{p}⌋+⌊\frac{n}{p ^ 2}⌋+⌊\frac{n}{p ^ 3}⌋⋅⋅⋅⋅⋅⋅\) 个(简要证明: \ 阅读全文
posted @ 2025-10-15 22:27 孤独的Bochi 阅读(13) 评论(0) 推荐(0)
摘要: 简要题意 告诉一些站点之间的距离,求两站距离最小的两个站 思路 对于某个站点,站台1到他前面的站的距离一定已经处理好了,所以可以用一个数组维护前缀和,从前面某个站转移过来,最后统计就行了 Code: #include <bits/stdc++.h> using namespace std; name 阅读全文
posted @ 2025-10-15 22:18 孤独的Bochi 阅读(4) 评论(0) 推荐(0)
摘要: 题意 \(n (n \leq 200000)\) 个点构成一棵树,开始时任两点之间的边全是灰色的。现决定将已有的边重新涂色。每次操作将选择两个点 \(A,B\) 和一种颜色 $ C(1 \leq C \leq 7)\(,并\)A,B$之间颜色不是 \(C\) 的道路涂成 \(C\)。求输出每种颜色被 阅读全文
posted @ 2025-10-15 22:03 孤独的Bochi 阅读(3) 评论(0) 推荐(0)
摘要: 思路 第一眼看去好像并没有什么思路,于是我们通过手算或者暴力搜索打了一个表, 当 \(n = 2\) 时,当 \(k\) 变化时,答案如表所示 n\ k 1 2 3 4 1 (1, 1) (2, 2) (3, 3) (4, 4) 2 (0, 1) (3, 4) (15, 16) (24, 25) 3 阅读全文
posted @ 2025-10-13 21:54 孤独的Bochi 阅读(8) 评论(0) 推荐(0)
摘要: 思路 可以利用悬线法,处理对于每个点在高度为 \(h\) 时的左右边界,然后随着高度增加,这个边界表示的范围一定是单调不增的,但是高度又在增加,所以一直取 \(max\) 就对了 最后注意输出答案的三倍 \(C++\) \(AC\) \(Code:\) #include<bits/stdc++.h> 阅读全文
posted @ 2025-10-12 09:44 孤独的Bochi 阅读(11) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-10-10 20:22 孤独的Bochi 阅读(3) 评论(0) 推荐(0)
摘要: 浅谈导数 导数的一般定义及几何意义 引入 我们在初中学一次函数的时候,知道有一个东西叫做斜率。令在某一次函数上的两点分别为 \((x_0, y_0)\) , \((x_1,y_1)\) ,则它的表达式为 \(k = \large{\frac{y_0 - y_1}{x_0 - x_1}} = \large{\f 阅读全文
posted @ 2025-10-07 21:20 孤独的Bochi 阅读(40) 评论(0) 推荐(0)