摘要: 数据结构 并查集 vector<int> fa(n + 1); //扩展域并查集注意开n*3+1 iota(fa.begin(), fa.end(), 0); // 带权并查集则同时更新d[x],siz[x] function<int(int)> find = [&](int x) { return 阅读全文
posted @ 2024-11-26 21:44 XYukari 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 注意到,要求一个值域是 \(\{1,-1\}\) 的序列的子段和有多少种不同的取值,实际上就是求它的最小子段和 \(a\) 到最大子段和 \(b\) 之间有多少个整数。因为可以证明,每个处于 \([a,b]\bigcap Z\) 中的数,都至少有一个子段与之对应——要得到和为 \(b-1\) 的子段 阅读全文
posted @ 2024-12-27 14:52 XYukari 阅读(8) 评论(0) 推荐(1) 编辑
摘要: 第五章 插值法与拟合法 拉格朗日插值 已知函数在 \(n+1\) 个点上的函数值 \(f(x_i)\): 基函数: \(l_{in}=\prod\limits_{k=0,k\neq i}^n \dfrac{x-x_k}{x_i-x_k}\) 插值多项式:\(L(x)=\sum\limits_{i=0 阅读全文
posted @ 2024-12-27 14:20 XYukari 阅读(11) 评论(0) 推荐(0) 编辑
摘要: “同种颜色的边不成环”可以等价转化为“同种颜色的边构成森林”,所以同种颜色的边最多 \(2n+m-1\) 条。总共有 \(n\) 种颜色,所以合法的最大边数为 \((2n+m-1)n\)。 有解条件 \((2n+m-1)n\ge 2nm\),化简得 \(m\le 2n-1\)。 处理完了无解情况,下 阅读全文
posted @ 2024-12-20 13:39 XYukari 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 发现 \(k\le10^9\),肯定不能直接模拟了。但是注意到,如果最小值 \(\min\times m>\max\) 存在,我们可以直接给每个数乘上 \(m^{\lfloor\frac{k}{n}\rfloor}\),最后再处理剩下的 \(k\bmod n\) 个 \(m\) 即可,这个复杂度是 阅读全文
posted @ 2024-12-14 20:40 XYukari 阅读(8) 评论(0) 推荐(0) 编辑
摘要: Day 1 #ifndef cJSON__h #define cJSON__h 避免头文件重复定义。首先检查是否已经包含了 cJSON__h 宏,如果没有包含则包含之并执行下面的代码;如果已经包含则跳过这段代码,避免了同一份文件的重复执行,导致同一个文件内类和结构体等被多次定义等问题(至少造成了编译 阅读全文
posted @ 2024-12-11 21:46 XYukari 阅读(23) 评论(0) 推荐(0) 编辑
摘要: C - 11/22 Substring 枚举每个 /,从 / 出发向左右两边扩展到最远。因为每个点最多能被访问一次(向右只扩展 2,向左只扩展 1),复杂度为 \(O(n)\)。 int ans = 0; for (int i = 0; i < n; i++) { if (s[i] != '/') 阅读全文
posted @ 2024-12-11 13:16 XYukari 阅读(7) 评论(0) 推荐(0) 编辑
摘要: C - Kaiten Sushi 把寿司都放到一个堆里,从前往后扫 \(A\) 数组,如果当前食客 \(A_i\) 小于等于堆顶,就取出堆顶,记录这份寿司被第 \(i\) 个人吃掉。复杂度 \(O(n\log m)\)。 D - Keep Distance 搜索回溯,但每一步从 \(10\) 枚举到 阅读全文
posted @ 2024-12-07 19:35 XYukari 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 电场 一、公式 静电力计算:库伦定律 \(\vec{F}=\dfrac{q_1q_2}{4\pi \epsilon_0 r^2}\vec{e_r}\) 电场强度:\(\vec{E}=\dfrac{\vec{F}}{q_0}=\dfrac{q}{4\pi \epsilon_0 r^2}\vec{e_r 阅读全文
posted @ 2024-12-06 14:51 XYukari 阅读(19) 评论(0) 推荐(0) 编辑
摘要: pbds 是 GNU 扩展库的一部分,在 g++ 环境下可以直接使用,clang 下不能使用。 #include <bits/extc++.h> // pbds万能头 using namespace __gnu_cxx; using namespace __gnu_pbds; 堆 #include 阅读全文
posted @ 2024-12-02 12:25 XYukari 阅读(9) 评论(0) 推荐(0) 编辑
摘要: A. King Keykhosrow's Mystery 题意可以转化为存在 \(k_1,k_2\) 使得 \(m=a\times k_1+n = b\times k_2 +n\)。消去余数 \(n\) 得到 \(a\times k_1=b\times k_2\),即 \(a,b\) 的公倍数。所以 阅读全文
posted @ 2024-12-01 18:55 XYukari 阅读(34) 评论(0) 推荐(0) 编辑