上一页 1 2 3 4 5 6 7 ··· 22 下一页
摘要: 周报 这周学习了cdq分治,主席树,动态开点线段树,线段树合并等,主要重心放在了数据结构上,另外也学习了一些一些‘黑科技’,比如 Meissel_Lehmer,能够在 \(O(n^{\frac 23})\) 内计算出 \(1\sim n\) 的素数个数,又比如 Miller–Rabin 可以在近似 阅读全文
posted @ 2024-08-11 19:14 Ke_scholar 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 河南萌新联赛2024第(四)场:河南理工大学 A-该出奇兵了_河南萌新联赛2024第(四)场:河南理工大学 (nowcoder.com) 思路 一次奇袭相当于割掉了一个点,而每割掉一个点可能会产生一个或多个连通分量,所以我们需要计算删掉一个节点后其新产生的联通分量的贡献。 以割点为分界点,分为两棵子 阅读全文
posted @ 2024-08-09 22:22 Ke_scholar 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 复杂度 \(O(n^\frac 23)\),计算 \(1\sim n\) 的素数个数 #define div(a, b) (1.0 * (a) / (b)) #define half(x) (((x) - 1) / 2) i64 Meissel_Lehmer(i64 n) { if (n <= 3) 阅读全文
posted @ 2024-08-09 20:01 Ke_scholar 阅读(12) 评论(0) 推荐(0) 编辑
摘要: using i128 = __int128; istream &operator>>(istream &is, i128 &x) { string s; is >> s; bool neg = false; x = 0; for (char c : s) { if (c == '-') neg = 阅读全文
posted @ 2024-08-09 18:51 Ke_scholar 阅读(35) 评论(0) 推荐(0) 编辑
摘要: template<class Node> struct PersidentSegmentTree { #define lc(u) tr[u].l #define rc(u) tr[u].r const int n; int tot = 0; vector<Node> tr; vector<int> 阅读全文
posted @ 2024-08-09 11:04 Ke_scholar 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 【线段树合并/树上差分】P4556 [Vani有约会] 雨天的尾巴 /【模板】线段树合并 思路 对 \(x,y,lca(u,v),fa_{lca(u,v)}\) 四个点进行树上差分,然后用线段树合并动态权值线段树。 #include <bits/stdc++.h> using namespace s 阅读全文
posted @ 2024-08-09 11:02 Ke_scholar 阅读(5) 评论(0) 推荐(0) 编辑
摘要: jiangly的(偷一下 i64 mul(i64 a, i64 b, i64 m) { return static_cast<__int128>(a) * b % m; } i64 power(i64 a, i64 b, i64 m) { i64 res = 1 % m; for (; b; b > 阅读全文
posted @ 2024-08-08 21:17 Ke_scholar 阅读(16) 评论(2) 推荐(1) 编辑
摘要: P3919 【模板】可持久化线段树 1(可持久化数组) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include <bits/stdc++.h> using namespace std; using i64 = long long; template<class Node> 阅读全文
posted @ 2024-08-08 00:27 Ke_scholar 阅读(3) 评论(0) 推荐(0) 编辑
摘要: template<class Node> struct PersidentSegmentTree { #define lc(u) tr[u].l #define rc(u) tr[u].r #define val(u) tr[u].v const int n; int tot = 0; vector 阅读全文
posted @ 2024-08-07 19:42 Ke_scholar 阅读(13) 评论(1) 推荐(0) 编辑
摘要: P3834 【模板】可持久化线段树 2 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include <bits/stdc++.h> using namespace std; using i64 = long long; template<class Node> struct 阅读全文
posted @ 2024-08-07 19:41 Ke_scholar 阅读(7) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 22 下一页