- 博客(18)
- 收藏
- 关注
转载 快读
int rd(){ int s=0; char c=getchar(); while(c>'9'||c<'0')c=getchar(); while(c>='0'&&c<='9'){s=s*10+c-'0';c=getchar();} return s;} 这个快读不能读负数...
2019-04-02 16:48:00
146
转载 《货车运输》题解--最大生成树&倍增
货车运输【题目描述】A国有n座城市,编号从1到n,城市之间有m条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有q辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。【输入输出格式】输入格式 输入文件第一行有两个用一个空格隔开的整数n,m,表示A国有n座城市和m条道路。接下来m行每行3个整数x、y、z,每两个整数之间用一...
2019-04-02 14:30:00
547
转载 倍增思想求lca
一.倍增的思想 倍增的思想~啾咪! 震惊!一只小兔子竟然干出这样的事情...... https://blog.youkuaiyun.com/dong_qian/article/details/81702697二.倍增的应用——lca 1.资本:f [ x ] [ i ]:x向上条2^i步的节点。 dep [ x ]:x点的深度。 2.步骤:分...
2019-03-19 16:43:00
162
转载 STL-map
头文件 #include <map>using namespace std;定义map:map<typename1,typename2>name;typename1是映射前类型,键typename2是映射后类型,值name是映射的名字字符串到整型必须用string键和值都可以是STL容器比如set若通过迭代器访问map,那就要先定义迭...
2019-03-19 15:44:00
130
转载 前向星原理
前向星是一条绳,长相如下:父节点x->0(head[x])父节点x->子节点1(head[x])->0父节点x->子节点2(head[x])->子节点1->0父节点x->子节点3(head[x])->子节点2->子节点1->0定义结构体如下:struct Edge{ int next,v,w...
2019-03-19 15:33:00
106
转载 基本算法-位运算
与&或l非~异或xor同1为1有1为1异1同0在m位二进制中,通常称最低位为第0位,从右到左类推,最高位为第m-1位补码对于32位无符号整数来说,直接把这个编码看做无符号二进制数;对于32位有符号整数来说,最高位是符号位,0表示非负数,1表示负数。对于非负数,直...
2019-03-08 17:03:00
145
转载 最短路-Dijikstra
一个无负权的图(可能有环)一定有最短路,最长路确不一定(因为有环)。dijikstra用于计算正权图的单源最短路。 最短路满足最优子结构性质,所以是一个动态规划问题。最短路的最优子结构可以描述为:D(s, t) = {Vs ... Vi ... Vj ... Vt}表示s到t的最短路,其中i和j是这条路径上的两个中间结点,那么D(i, j)必定是i到j的最短路,这个性质是显然的...
2019-03-05 15:47:00
184
转载 拓扑求DAG最长路
#include <iostream>#include <cstdio>#include <queue>#include <cstring>#define maxn 1000000using namespace std;int n,m;struct Edge{//存边 int next; ...
2018-10-24 13:28:00
153
转载 “简单”的数论
求欧拉函数:小于等于n,和n互质的数的个数int euler_phi(int n){ int m=int(sqrt(n+0.5)); int ans=n; for (int i=2;i<=m;i++) if (n%i==0) { ans=ans/i*(i-1); while (n%i=...
2018-10-19 20:02:00
86
转载 字符串的小伙伴
字符串小朋友结交了很多好朋友,他们大多都很乐于助人,帮助字符串解决他的问题一.字符串哈希 字符串渴望和整数交好朋友,哈希是一个连接字符串和整数之间的媒介,他可以把字符串和整数相互匹配。哈希是多少?当然这个是要做题的人自己来设置的。 求一个字符串前缀哈希的公式是:hash【i】=(1ll *hash【i-1】*p+idx(s【i】))%mod; 其中p自己设为一个六位...
2018-10-18 06:48:00
118
转载 树形dp题型——来自大佬
1:给出一棵树 每个节点有权值 要求父节点和子节点不能同时取 求能够取得的最大值 (hdu1520)2:给出一棵树,求离每个节点最远的点的距离 (hdu2196)3:1>在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中允许攻克M个城堡并获得里面的宝物。但由于 地理位置原因,有些城堡不能直接攻克,要攻克这些城堡必须先攻克其他某一个特定的城堡。求获得尽...
2018-10-16 18:11:00
187
转载 背包问题
背包问题是一种动态规划问题问题是给你背包容量和物品的花费、价值,不一定要将背包装满,问怎样装才可以使价值最大背包问题可分为01,完全,多重,混合,分组(互斥),二维费用,依赖一:01背包:!!!每个物品只有一件,而且v的列举需要倒序将n个物品放入容量为v的背包,每件物品花费w、价值c都已给出。每个物品只有一件,可以选择放或者不放用f[j]表示物品放入j的容量时...
2018-10-10 06:57:00
105
转载 同余问题
a与b对模m同余,当且仅当m|(a-b)时,记为a≡b(mod m)设m>0a≡b(mod m)的性质:①a≡a (mod m) ……自反性②若a≡b (mod m),则b≡a (mod m)……对称性③若a≡b (mod m),b≡c (mod m),则a≡c (mod m)……传递性④若a≡b (mod m),c≡d (mod m),则a...
2018-10-08 12:21:00
278
转载 GCD&LCM
x | y 是指y%x==0Gcd(a,b)表示a,b的最大公约数Lcm(a,b)表示a,b的最小公倍数ab=Gcd(a,b)*Lcm(a,b)求最大公约数:法一:Gcd(a,b)=Gcd(b,a%b) 法二: 如果a==b,Gcd(a,b)=a; 如果a,b都是偶数,Gcd(a,b)=Gcd(a/2,b/2)...
2018-10-08 08:52:00
173
转载 欧拉函数
内容:计算一个数内的与这个数互质元素的个数每个数都能被分解成若干质数的乘积设p1^a1×p2^a2×…×pk^ak为正整数n的素数乘积式,那么这个正整数的互质元素个数为:=n×(1-1/p1) ×(1-1/p2)×…×(1-1/pk)也为: 1 int eular(int n) 2 {int k,res; 3 k=2; res=...
2018-10-08 07:56:00
143
转载 唯一分解定理
唯一分解定理内容:每个正整数都可以分解成若干质数的乘积,质数从小到大排列(乘积可以是0,1,2......)用数学式子表示则:对任一整数a>1,有a= (p1^a1)*(p2^a2)…(pn^an) ,其中p1<p2<…<pn均为素数,而a1,a2…,an是正整数。(1是个特殊情况,不算入)那么,背记重点来了:1.a的正约数的个数:(每个都是从a0到an)...
2018-10-07 22:09:00
336
转载 线性筛质数法
法一:埃式筛法思想大体就是: 一个数是质数,那这个数的倍数(除了1)一定不是质数。 比如2是素数,那筛掉2*2,2*3,2*4...... 3是素数,那筛掉3*3,3*4,3*5......找n以内的质数:假设p是素数,那筛掉p*p,p*(p+1)......p*(n/p);p枚举到logn即可,因为: 假设a*b=n,a为更小的那个,则a*a&l...
2018-10-07 21:12:00
144
转载 快速幂的思想
预备知识:a*b%p=((a%p)*b)%p(a+b)%p=(a%p+b)%p 快速幂就是快速求一个数的幂两个整数a,b,求a^b把b分解成几个2的次方的和,然后就相当于做一个指数乘法比如说2^1111=2^3+2^1+2^0ans=2^(2^3+2^1+2^0)=2^(2^3)*2^(*2^1)+2^(2^0)代码:...
2018-10-07 19:45:00
256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人