看到elementUI封装的el-table组件觉得很有意思,就自己简单实现了自己的一个table组件,具体功能有 columns:表头 data:数据 border:是否有边框 zebra:是否有斑马纹 hover:悬浮效果 change:change事件 具体样式自己修改,只实现功能 使用 <MyTable :columns="column
《标准线段树》 普通的线段树,其区间一般都是一个序列的数的个数,但还是要根据不同题目来判断 注意:tr[]空间是N*4,N为最大范围 《单点修改,区间查询》 原题:https://www.acwing.com/problem/content/1277/ 像这道题,N最大为2*1e5,我们可以事先建立一颗最大范围1~N的
线段树学习笔记 1. 线段树简介 线段树,是一种二叉搜索树,其每一个节点表示了一段区间。 线段树支持的操作有: 区间求 和 或 最大/最小值,时间复杂度 \(O(logN)\)(p.s.后面代码均以求和为例) 有同学说:“这还不简单?我用前缀和 O(1) 就能做,要他干什么?” 不要着急,因为线段树还有这个功
先开坑,晚上再写。 P1856 [IOI1998] [USACO5.5] 矩形周长Picture Code #include<cstdio> #include<algorithm> using namespace std; const int MAXN = 1e5 + 10; int n, tot_x, tot_y, last_x, last_y; long long sum; int val_x[MAXN], val_y[MAXN]; int x[MAXN], y[MAXN]
视频链接: Luogu P3835 【模板】可持久化平衡树 #include <iostream> using namespace std; const int N=500005; struct node{ int l,r; //左右儿子 int val; //树的权值 int rnd; //堆的随机值 int size; //子树大小 }tr[N*50]; int root[N],idx; void pushup(int p)
AC自动机的板子 感觉非常合理,但是又不会证明,就先这样吧 感觉还有至少三个问题: 1、为什么要在空的子结点上连自己的fail结点的对应子结点(注释1) 2、为什么u结点不需要参与转移(注释2) 3、为什么遇到end == -1就可以break(注释3) #include<bits/stdc++.h> using namespace std; #define
题目链接:https://acm.hdu.edu.cn/showproblem.php?pid=7192 LCT维护一下fail树形态,询问时把删除部分和没有被删除的部分交线附近暴力匹配一下。 #include<bits/stdc++.h> #define N 400009 using namespace std; typedef long long ll; char s[N],s1[N]; int n,q; int ch[N][26],s
链接:https://ac.nowcoder.com/acm/contest/26896/1011来源:牛客网 题目描述 我的就是我的,你也是我的,记住了,狐狸! ——韩信-白龙吟
表格table tr行 td列也是单元格属性:1.width宽度2.height高度3.表格内外边框空隙cellspacing="0"4.内边框到内容的距离cellpadding=""5.边框border="1"6.边框颜色bordercolor=""7背景颜色bgcolor="green"8.背景图片backgro=""9.在table里面写align="center&quo
GYM103373F(线段树,子段问题) 题意 给定一个01串。定义01交替或者10交替的子段为交替串。 有两个操作: flip区间 \([l,r]\) 输出区间 \([l,r]\) 内交替串的数量 思路 如果有极长交替串长度,可以算出交替串数量 于是考虑维护交替串的长度。我们用线段树对其维护。 维护当前结点的答
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=
Acwing 1282 搜索关键词 题意: 给定 \(n\) 个长度不超过 \(50\)的由小写英文字母组成的单词,以及一篇长为\(m\)的文章。 请问,其中有多少个单词在文章中出现了。 思路: AC自动机模板题目 但是由于匹配到的是和当前的的字符串最长的字符位置,但是可能里面包含则其他单词,所以要不断的找
Acwing 1053 修复DNA 题意: 给出\(n\)个字符串,这些字符串为致病因子,给出一个字符串,求将这些字符串处理成没有致病因子,最少需要改变多少个字符数量 请问,其中有多少个单词在文章中出现了。 思路: 利用AC自动机来实现多字符串匹配,设f[i][j]为,前i个字符,当前匹配到j。 注意标记哪些点不
https://ac.nowcoder.com/acm/contest/9033/D 分析:这种类型的题目做法很固定 首先离线 设当前点为i 若以i为右端点 则合法的左端点一定是连续的一段 设为[l,r] 这个可以预处理出来 预处理的时候要注意 不能只考虑i的颜色 一定要和之前的颜色取max 询问的时候 区间修改区间求和 从
概念: 字典树(TrieTree),是一种树形结构,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串,如01字典树)。主要思想是利用字符串的公共前缀来节约存储空间。很好地利用了串的公共前缀,节约了存储空间。字典树主要包含两种操作,插入和查找。 模板: 字符串trie模板 #include <algor
Codeforces Round #556 (Div. 2) D. Three Religions 分析 一开始的想法是,我们贪心的,每次操作后都暴力匹配一下每个串能不能匹配上。 匹配的贪心是,我们考虑对于一个串\(s_i\),我们在S中匹配时,一定尽可能选择靠近的字符匹配。 但是很明显,这样的贪心是错的。 我们举个简单的例子,比如
样例输入 1 7 add 1 1 add 3 4 find 0 0 remove 1 1 find 0 0 add 1 1 find 0 0 样例输出 1 1 1 3 4 1 1 样例输入 2 13 add 5 5 add 5 6 add 5 7 add 6 5 add 6 6 add 6 7 add 7 5 add 7 6 add 7 7 find 6 6 remove 7 7 find 6 6 find 4 4 样例输出 2 7 7 -1 5 5 数据范围
<!doctype html> <html lang="en"> <head> <title>jquery里操作table相关的各种方法在线演示-aijQuery.cn</title> <script src="/static/jquery-3.1.1.min.js"></script> <style type="text/css"> .o
LeetCode 实现跳表 主要参考了以下几篇Bolg: https://www.acwing.com/blog/content/15081/ https://www.jianshu.com/p/9d8296562806 https://www.acwing.com/blog/content/4863/ https://www.luogu.com.cn/blog/your-alpha1022/SkipList class Skiplist { public: const stati
比赛链接 2022“杭电杯”中国大学生算法设计超级联赛(1) 7150. Static Query on Tree 给定一棵 \(n\) 个节点的树,每个节点只能向根节点走。 \(q\) 个询问,每次给定三个集合 \(A 、 B 、 C\) ,在 \(A 、 B 、 C\) 中分别取出 \(x, y, z\) ,问 \(x, y\) 往最终在 \(z\) 汇合, \(x, y\) 都
对于一个非叶节点,不管是否要交换子树,其左右子树内部的逆序对数都不会受影响(内部的顺序并不会影响外部产生的逆序对数),受影响的是跨左右子树的情况,所以我们考虑统计这一部分的逆序对数。节点x的左右子树根节点为p,q,u+=size[t[p].rc] * size[t[q].lc],交换后 v+=size[t[p].lc]*size[t[q
显然的树上差分问题,最后要我们求每个点数量最多的物品,考虑对每个点建议线段树,查询子树时将线段树合并可以得到答案。 用动态开点的方式建立线段树,注意离散化。 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N = 1e5 + 10; 4 struct node { 5 int
1、复共轭转置矩阵 矩阵 \(A\) 的复共轭转置记作 \(A^H\) ,定义为 AH=[a11∗a21∗⋯am1∗a12∗a22∗⋯am2∗⋮⋮⋮a1n∗a2n∗⋯amn∗] 共轭转置又叫 Hermitian伴随,Hermitian转置或Hermitian共轭。满足 \(A^H=A\) 的正方复矩阵称为Hermitian矩阵或共轭对称矩阵。 2、矩阵的内积 矩阵
【模板】轻重链剖分/树链剖分 题目描述 如题,已知一棵包含 \(N\) 个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 1 x y z,表示将树从 \(x\) 到 \(y\) 结点最短路径上所有节点的值都加上 \(z\)。 2 x y,表示求树从 \(x\) 到 \(y\) 结点最短路径上所有节点的值之和
传送门: Cow Confinement 思路: 先考虑一个更简单的问题,如果没有围栏的限制,只有花和牛。对于这个简化的问题,由于牛只可以向 x 或 y 增大的方向移动,所以我们可以用一条平行于 x 轴的扫描线,按 y 轴从大到小扫描: 如果遇到花,就在数状数组对应位置权值加 1 如果遇到牛,查询 [x, inf] 区间上