会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
404 Not Found
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
14
15
16
17
18
19
20
21
22
下一页
2024年3月28日
写模板, LCA。
摘要: 基于有根树。 1 作用:可以找到离两个点最近的公共点,这个公共点也可以作为唯一路径的一个中间点。如果记录了两个点到这个公共点的一些数据,就可以处理一些问题。 2 实现方法:基于倍增的思想,对每个点记录了2的整数次方的距离条件下的每个祖先,可以通过递推来解决。 3 注意事项:最大深度应该是不超过n的一
阅读全文
posted @ 2024-03-28 09:53 _Yxc
阅读(17)
评论(0)
推荐(0)
2024年3月27日
写模板,kmp。
摘要: 1 为什么要写kmp? 因为find暴力匹配函数,时间复杂度过高,因为s串指针回溯问题。 2 为了避免s串指针回溯,对t串构建kmp表,该表记录了当前位置匹配失效时,下一个比较的下标。 3 原理?next表表示了当前下标j的最长公共前后缀长度,因为下标从0开始,这个长度也是最长公共前缀的下一个位置,
阅读全文
posted @ 2024-03-27 17:30 _Yxc
阅读(19)
评论(0)
推荐(0)
洛谷 P8306 【模板】字典树
摘要: 写模板: 1 确定树的节点指针数量 2 确定起始字符 3 实现插入方法 4 根据题目编写求解方法,或者添加计数元素到节点中 struct Node{ array<int, 100> next{}; int cnt = 0; }; class Trie{ public: Trie(char start
阅读全文
posted @ 2024-03-27 13:19 _Yxc
阅读(109)
评论(0)
推荐(0)
洛谷 P5937 [CEOI1999] Parity Game
摘要: 题意:区间长度为n,m个查询。每次查询给出区间与一个数值0或者1,代表区间内的1的个数。找出不矛盾的最后一个询问。 思路:首先用到区间压缩,排序后去重即可。使用带权dsu,如果是同一个root,那么xor运算看是否符合输入。如果不是同一个root,直接合并。这里合并区间的时候权重更新有点抽象,xx合
阅读全文
posted @ 2024-03-27 10:26 _Yxc
阅读(44)
评论(0)
推荐(0)
2024年3月26日
洛谷 P9237 [蓝桥杯 2023 省 A] 像素放置
摘要: 题意:n * m的方格,有的格子是数字,是数字的格子代表了相邻(包括自己)的9个格子内颜色值为1的格子有这么多个。给出这个方格,求满足条件的颜色方格,保证答案唯一。 n <= 10, m <= 10。 思路:想不出好办法,直接暴力+剪枝。 暴力好说,01dfs即可,关键是如何剪枝。剪枝肯定是已经不会
阅读全文
posted @ 2024-03-26 17:25 _Yxc
阅读(154)
评论(0)
推荐(0)
洛谷 P3368 【模板】树状数组 2
摘要: class FenwickTree{ public: FenwickTree(int sz): sz_(sz){ ft_.resize(sz_); } FenwickTree(vector<long long>& f){ sz_ = int(f.size()); ft_.assign(sz_, 0)
阅读全文
posted @ 2024-03-26 13:14 _Yxc
阅读(35)
评论(0)
推荐(0)
洛谷 P3374 【模板】树状数组 1
摘要: class FenwickTree{ public: FenwickTree(int sz): sz_(sz){ ft_.resize(sz_); } FenwickTree(vector<long long>& f){ sz_ = int(f.size()); ft_.assign(sz_, 0)
阅读全文
posted @ 2024-03-26 13:09 _Yxc
阅读(18)
评论(0)
推荐(0)
写模板,树状数组。
摘要: 1 根据长度初始化, 单点更新, 区间查询。 可以查询区间和(输入为位置+数值), 可以查询区间内频次(输入为数值+频次1)。 2 根据输入数据线性初始化。 3 根据输入数据频次线性初始化,区间更新,单点查询。 根据差分后的数组求前缀和(单点查询)。 class FenwickTree{ publi
阅读全文
posted @ 2024-03-26 13:06 _Yxc
阅读(19)
评论(0)
推荐(0)
洛谷 P1656 炸铁路
摘要: 题意:n个点,m条边,问有哪条边是去掉之后,会造成之前连通的点不再连通的?n <= 150, m <= 5000. 思路:连通算法有dfs+bool数组记录,或者dsu,感觉dsu更方便。m * n 不超过1e6,直接暴力。 class DisjointSet{ public: DisjointSe
阅读全文
posted @ 2024-03-26 09:35 _Yxc
阅读(32)
评论(0)
推荐(0)
2024年3月25日
写模板, 并查集。
摘要: 1: 实现路径压缩并查集,查找,合并,判同集合。 2: 获取集合大小,集合数量。 3: 增加权重,查询单个元素到集合代表元素的权重。 4: 增加获取集合中元素的功能。 以C++的三大特性之一封装来写该模块,代码量大概是90行左右。 用到的库: vector, nnumeric(iota函数)。 cl
阅读全文
posted @ 2024-03-25 13:25 _Yxc
阅读(17)
评论(0)
推荐(0)
上一页
1
···
14
15
16
17
18
19
20
21
22
下一页
公告