随笔分类 -  算法竞赛 / 数据结构

摘要:从启发式合并到Dsu on Tree 传统启发式合并 [HNOI2009] 梦幻布丁 题目描述 n 个布丁摆成一行,进行 m 次操作。每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。 例如,颜色分别为 1,2,2,1 的四个布丁一共有 3阅读全文 »
posted @ 2024-05-18 15:48 potential-star 阅读(7) 评论(0) 推荐(0) 编辑
摘要:倍增大专题 [AHOI2008] 紧急集合 / 聚会 - 洛谷 题意:给定一棵树,多次查询费马点(bushi 费马点的含义是:到三个点的距离之和最小 Solution:考虑画图发现树上三点两两求lca,必然至少两个相同,然后我们只需要让费马点为另一个点就可以了,因为这一段路程只需要一个点走就最好了。 阅读全文 »
posted @ 2024-05-18 15:48 potential-star 阅读(20) 评论(0) 推荐(0) 编辑
摘要:01 trie 找序列中任意两数的最大异或和 int n, m; int a[N]; int idx=0; int ch[N*31][2]; void insert(int x){ int p=0; for(int i=30;i>=0;i--){ int u=(x>>i)&1; if(!ch[p][ 阅读全文 »
posted @ 2024-04-20 03:19 potential-star 阅读(9) 评论(0) 推荐(0) 编辑
摘要:DFS序专题 NC13611 https://ac.nowcoder.com/acm/problem/13611 题意:要求树上任意两点相同颜色之间的路径上的点也是相同颜色,k种颜色,求方案数 Solution:原问题等价于将树分割成若干连通块且相互之间颜色不同 其实是道数论题。 题意可以转化为将树 阅读全文 »
posted @ 2024-04-12 20:00 potential-star 阅读(24) 评论(0) 推荐(0) 编辑
摘要:Codeforces Round 937 (Div. 4) B题是输出规律图形题,对于这种题不能直接不思考就上去模拟,而应该思考一下数学规律,往往是模意义下的规律。 本题只需要模4以后的结果分为两类,分别讨论即可。对于模4可以利用位运算取出第二位的,这与模2同理。 char s1='#'; char 阅读全文 »
posted @ 2024-04-04 13:57 potential-star 阅读(69) 评论(0) 推荐(0) 编辑
摘要:https://www.luogu.com.cn/problem/P8773 [蓝桥杯 2022 省 A] 选数异或 题目描述 给定一个长度为 n 的数列 A1,A2,,An 和一个非负整数 x, 给定 m 次查询, 每次询问能否从 阅读全文 »
posted @ 2024-03-30 01:53 potential-star 阅读(21) 评论(0) 推荐(0) 编辑
摘要:https://www.acwing.com/problem/content/description/2071/ 每次合并的时候需要开一个新点去实现信息的无后效性,也就是合并之前的两个连通块信息是无法共享的,发现这样开点连边最后 形成一棵树,每次我们将信息传递到新点,也是两个合并点的lca,这使得最 阅读全文 »
posted @ 2024-03-21 16:06 potential-star 阅读(16) 评论(0) 推荐(0) 编辑
摘要:链接:https://ac.nowcoder.com/acm/contest/69510/G 来源:牛客网 你在一个星球上,外星人amiloac想让你管理一条河流,该河流有x段,每两段之间有一个挡板隔开,每一段都有各自的颜色a。你需要管理q天,每一天你需要做以下的一种操作。 阅读全文 »
posted @ 2024-03-05 23:18 potential-star 阅读(42) 评论(0) 推荐(0) 编辑
摘要:hh的项链:不带修改维护区间种类数 https://www.luogu.com.cn/problem/P1972 树状数组做法 https://zhuanlan.zhihu.com/p/272804539 #include<bits/stdc++.h> using namespace std; in 阅读全文 »
posted @ 2023-12-22 22:34 potential-star 阅读(8) 评论(0) 推荐(0) 编辑
摘要:对于种类并查集主要是考虑清楚到根节点距离分为几类,每一类的意义 有的题目相出d数组的含义才能想到用带权并查集 //find函数需要变化 int find(int x) { if (p[x] != x) { int root = find(p[x]); d[x] += d[p[x]]; p[x] = 阅读全文 »
posted @ 2023-12-09 21:24 potential-star 阅读(11) 评论(0) 推荐(0) 编辑
摘要:https://www.acwing.com/activity/content/competition/problem_list/3648/ B题收获: 1.利用题目告诉的结论:1e9范围质数之差小于300 2.一个数不被2-a的任何数整除 等价于他的最小质因子需要大于a c题:初步宏观思路:不难想 阅读全文 »
posted @ 2023-12-03 20:53 potential-star 阅读(6) 评论(0) 推荐(0) 编辑

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