
模板
coldfresh
那我们开始吧
展开
-
欧拉函数及其相关
求指定数值的欧拉算法: static int euler(int n) { int res=n,a=n; for(int i=2;i*i<=a;i++) { if(a%i==0) { res=res/i*(i-1); while原创 2017-05-10 18:40:16 · 316 阅读 · 0 评论 -
素数的线性欧拉筛
先上代码:#define maxx 400005using namespace std;int prime[100005];bool p[maxx];int cnt=0;void init(){ for(int i=2;i&amp;lt;maxx;i++) { if(!p[i]) prime[cnt++]=i; ...原创 2018-07-22 15:10:39 · 339 阅读 · 0 评论 -
Aragorn's Story HDU - 3966(树链剖分)
Our protagonist is the handsome human prince Aragorn comes from The Lord of the Rings. One day Aragorn finds a lot of enemies who want to invade his kingdom. As Aragorn knows, the enemy has N camps out原创 2017-10-09 23:25:25 · 261 阅读 · 0 评论 -
最小花费最大流模板
自己写的最小花费最大流模板#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<queue>using namespace std;const int maxn=10010;//点数const int maxx=100100;//边数,注意为实际上边数的两倍const int INF=1<原创 2017-10-25 11:40:30 · 291 阅读 · 0 评论 -
1到n对于质数p的逆元的线性筛
1到n对于质数p的逆元inv[1]=1;for(int i=2;i<=n;i++) inv[i]=(p-p/i)*inv[p%i]%p;质求单个数的逆元,当然费马小定理也可以 时间复杂度相同int Get_inv(int n){ if(n==1) return 1; return (p-p/n)*(Get_inv(p%n))%p;}原创 2017-10-24 23:43:43 · 961 阅读 · 0 评论 -
莫比乌斯函数模板
#include<cstdio>#include<algorithm>#include<cmath>#include<iostream>#include<stack>#include<vector>#include<cstring>#define N 100005using namespace std;vector<int> prime;bool pri[N];int mu[N原创 2017-08-04 16:18:36 · 830 阅读 · 0 评论 -
X问题 HDU - 1573 (中国剩余定理)(非互质情况)
求在小于等于N的正整数中有多少个X满足:X mod a00 = b00, X mod a11 = b11, X mod a22 = b22, …, X mod aii = bii, … (0 < aii <= 10)。 Input 输入数据的第一行为一个正整数T,表示有T组测试数据。每组测试数据的第一行为两个正整数N,M (0 < N <= 1000,000,000 , 0 < M <= 10)原创 2017-06-07 12:34:14 · 439 阅读 · 0 评论 -
扩展欧几里得算法
返回的第一个是a和b的gcd,第二个是x,第三个是y javastatic int[] extendGCD(int a,int b) { int[]c=new int[3]; if(b==0) { c[0]=a; c[1]=1; c[2]=0; r原创 2017-05-11 13:01:49 · 742 阅读 · 0 评论 -
关于求组合数的一些总结
对于求C(n,m) 1.如果是对于小范围内的n和m(不是很难)就不说了 差不多用java的大数就可以了 2.当n在1e10^5范围左右,往往是会有取模,设这个数为mod(往往mod为质数,这个很重要)。 既然是组合数,就免不了有阶乘的部分, n 的范围在10^5的数量级,所以完全可以线性扫一遍,用一个fac数组存i的阶乘对mod取模即可, 但是对于除法取模,必须得用到逆元,所以还是需要去原创 2017-06-05 20:49:16 · 1955 阅读 · 0 评论 -
【wanaflyCamp】电音之王
代码: 学会了新姿势,以前只会longnlongnlongn的快速乘,无限T…后来想起我原来很久以前其实是学过的。#include&lt;iostream&gt;#include&lt;cstdio&gt;#define ll long long#define LL long longusing namespace std;inline LL mul(LL x,LL y,L...原创 2018-08-06 10:20:32 · 617 阅读 · 0 评论