摘要: 1.lower_bound大于等于它的第一个的指针 upper_bound大于它的第一个的指针 如果不存在,就返回指向尾部的指针 set自带的lowerbound会更快 2.vector insert(it, num) 是插入到it指向地方的前面 vector为空时使用会RE 阅读全文
posted @ 2020-03-19 18:14 aaaaaaaaaaaaaa123 阅读(130) 评论(0) 推荐(0)
摘要: 题意:构造数组a[],要求其子串异或不能为0或x 解法:连续子串异或和不为0或x,就是前缀和两两异或不为0或x。求出前缀和后,就能还原原数组。 int n,x; scanf("%d%d",&n,&x); int ans=0; n=(1<<n); for(int i=1;i<n;i++){ if(!v 阅读全文
posted @ 2020-03-13 21:28 aaaaaaaaaaaaaa123 阅读(126) 评论(0) 推荐(0)
摘要: 一般是分为有向图和无向图的:无向图:双连通分量:去掉任意一个节点(或一条边)都不会改变这个图的连通性。即不存在割点割边。 所以一般看到跟桥啊割点啊有关的…就想想缩点,入度出度。无向图缩点Tarjan算法 void tarjan(int u, int fa) { dfn[u] = low[u] = + 阅读全文
posted @ 2020-02-29 10:18 aaaaaaaaaaaaaa123 阅读(225) 评论(0) 推荐(0)
摘要: 都是POJ上经典基础的**最短路**习题 1. spfa判断负环: **EF** spfa差分: **K** 2. floyd: **H** Cow Contest **(Floyd传递闭包) 传递闭包就是:已知A->B,B->C那么就知A->C** 题意:知道一群牛的关系,求能确定几只牛的名次 思 阅读全文
posted @ 2020-02-29 10:16 aaaaaaaaaaaaaa123 阅读(115) 评论(0) 推荐(0)
摘要: 记录一下安装的过程 准备工作:先下载一个VMwareWorkstation14,再下载一个Ubuntu18.04的镜像。我是在软件安装管家公众号里面找到的现成的。如果之前电脑里有过VMware并且卸载,可能会出现卸载不完全的情况,需删除残留的注册表这个特难搞,幸好看到了这篇博客救我一命:[win10 阅读全文
posted @ 2020-02-29 10:14 aaaaaaaaaaaaaa123 阅读(301) 评论(0) 推荐(0)
摘要: 题意:n个数,问多少个集合的乘积是完全平方数 (x<70)题解:完全平方数的因子一定出现偶数个,那么问题就变成有多少个集合的异或和为0 就转化成用线性基来写 第i位为1就说明分解质因数后第i个质数出现了奇数次,为0即出现偶数次,之后再把它转回十进制的另一个数这样问题就变成了n个数,有多少个集合满足它 阅读全文
posted @ 2020-02-29 10:09 aaaaaaaaaaaaaa123 阅读(134) 评论(0) 推荐(0)
摘要: e-KMP专题(1)KMP和e-KMP会用(2) 循环节主要还是要会转换问题,问题的转换是不难的。KMP 求S和T匹配的个数 int nextt[maxn]; void getNext(char T[]) { int len=strlen(T); int i = 1; nextt[1] = 0; i 阅读全文
posted @ 2020-02-29 09:33 aaaaaaaaaaaaaa123 阅读(166) 评论(0) 推荐(0)
摘要: 用于求解树上长度为k的路径的数量问题主要就是**找树的重心+容斥思想** 以下是一些题目:luoguP3806模板题求树上长度为k的路径是否存在问题 #include<stdio.h> #include<algorithm> #include<iostream> using namespace st 阅读全文
posted @ 2020-02-29 09:27 aaaaaaaaaaaaaa123 阅读(121) 评论(0) 推荐(0)
摘要: 题意:带自环和重边的无向图已知两个端点b,c,问有没有一条连线经过点a 解法:tarjan缩点+LCA缩点后会得到一些无根树如果在不在同一树上则是‘NO’如果在: 1.b/c和a在同一点 2.a,b,c在三个不同点: 两种情况:a是最高lca a不是最高lca:要注意的是:无根树,多个树 阅读全文
posted @ 2020-02-29 09:20 aaaaaaaaaaaaaa123 阅读(143) 评论(0) 推荐(0)
摘要: 1.超过longlong long double a; scanf("%15Lf",&a); printf("%.0Lf",a); 2.sqrt 找1<=x<=1e18 的sqrt取整, sqrt精度不够, 要用二分查找 3.比较浮点数 double a,b; a=0.001;b=0.001 如果之 阅读全文
posted @ 2020-02-29 09:16 aaaaaaaaaaaaaa123 阅读(231) 评论(0) 推荐(0)