模板
Adolphrocs
这个作者很懒,什么都没留下…
展开
-
算符优先算法 编译原理
#include <bits/stdc++.h>#define FOR(i,s,t) for(int i=(s);i<=(t);i++)#define ROF(i,s,t) for(int i=(s);i>=(t);i--)#define pb push_back#define mp make_pair#define eb emplace_back#defin...原创 2019-11-25 13:53:16 · 418 阅读 · 0 评论 -
幂塔问题 拓展欧拉定理 连续b个a的幂次模c 2019南京网络赛B
拓展欧拉定理问题描述(连续b个a的幂次)#include <bits/stdc++.h>#define FOR(i,s,t) for(int i=(s);i<=(t);i++)#define ROF(i,s,t) for(int i=(s);i>=(t);i--)#define pb push_back#define mp make_pair#de...原创 2019-09-02 12:36:48 · 309 阅读 · 0 评论 -
BZOJ 2301 莫比乌斯反演模板题 Problem b
#include <bits/stdc++.h>#define FOR(i,s,t) for(int i=(s);i<=(t);i++)#define ROF(i,s,t) for(int i=(s);i>=(t);i--)#define pb push_back#define mp make_pair#define eb emplace_back#...原创 2019-08-29 17:11:28 · 210 阅读 · 0 评论 -
莫比乌斯反演的两种形式及证明
莫比乌斯反演的两种形式及证明第一种形式若则证明右边等于===========已知==============所以当且仅当n/k =1,即n=k时,∑μ(d)=1,其余时候等于0。得证==============第二种形式若则证明右边等于===========已知==============得===...原创 2019-08-29 16:41:40 · 284 阅读 · 0 评论 -
线段树 区间mex 离线 NKOJ 4254
题意:给你一个长度为n的数列,元素编号1到n,第i个元素值为Ai。现在有m个形如(L,R)的提问,你需要回答出区间[L,R]的mex值。即求出区间[L,R]中没有出现过的最小的非负整数。题解:由于没有修改,可以考虑离线算法。先将询问按照左端点排序。令S[i]表示区间[1,i]的MEX值MEX值,容易发现S[i]单调不降,并且可以O(n)的处理出来S数组。那么左端点为1的询问都可以处理,...原创 2019-08-27 17:36:13 · 351 阅读 · 0 评论 -
C++ 读入优化 程序设计竞赛中加速读入
int readInt(){ int x=0; bool sign=false; char c=getchar(); while(!isdigit(c)){ sign=c=='-'; c=getchar(); } while(isdigit(c)){ x=x*10+c-'0'; c=g...原创 2019-08-15 14:50:24 · 337 阅读 · 0 评论 -
欧拉判别法 欧拉准则
若是奇质数且不能整除,则:是模的二次剩余当且仅当:是模的二次非剩余当且仅当:以勒让德符号表示,即为:原创 2019-08-11 16:23:22 · 4272 阅读 · 0 评论 -
逆元 阶乘逆元 数论 HDU 5651 xiaoxin juju needs help
逆元用于用于对除法运算取模的运算表示的逆元求解逆元方法一:拓展欧几里得求逆元(求单个数的逆元)已知同时取模得可见是的逆元所以中的int ex_gcd(int a, int b, int &x, int &y){ if (b == 0){ x = 1; y = 0; return ...原创 2019-08-10 17:09:19 · 271 阅读 · 0 评论 -
费马小定理 费马大定理 数论
a与m互质时费马小定理费马小定理降幂求逆元费马大定理不存在 n > 2 使得n = 2时a为奇数时 a 、、a为偶数时 a 、、当 a 为奇数时,则 a = 2 * k + 1 ,解得 k 的值,则 b =2 * k * ( k + 1 ),c =2 * k * ( k + 1 ) + 1;当 a 为偶数时,则 a...原创 2019-08-07 16:59:36 · 518 阅读 · 0 评论 -
Snowy Smile 线段树+扫描线 HDU多校 HDU-6638
Snowy Smile Snowy Smile Time Limit: 4000/4000 MS (Java/Others)Memory Limit: 524288/524288 K (Java/Others) Total Submission(s): 2012Accepted Submission(s): 640 Problem Descri...原创 2019-08-09 15:17:27 · 261 阅读 · 0 评论 -
BZOJ 2154 莫比乌斯反演 Crash的数字表格
BZOJ 2154 莫比乌斯反演 Crash的数字表格题意:∑i=1n∑j=1mlcm(i,j)\sum_{i=1}^{n}\sum_{j=1}^{m} lcm(i,j)∑i=1n∑j=1mlcm(i,j)#include <bits/stdc++.h>#define FOR(i,s,t) for(int i=(s);i<=(t);i++)#define ROF(i...原创 2019-09-03 14:17:17 · 260 阅读 · 0 评论 -
[BZOJ - 2243] 染色 (动态树LCT)
题意:给定一棵有n个节点的无根树和m个操作,操作有2类:1、将节点a到节点b路径上所有点都染成颜色c;2、询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”和“1”。请你写一个程序依次完成这m个操作。“C a b c”表示这是一个染色操作,把节点a到节点b路径上所有点(包括a和b)都染成颜色c;“Q a...原创 2019-09-20 10:45:04 · 243 阅读 · 0 评论 -
BZOJ 2595 wc2008 浏览计划 [斯坦纳树]
斯坦纳树裸题但是本题的斯坦纳树是点权,与大多数图的边权不同,下边讲解一般的边权做法,然后再将本题的题解。斯坦纳树:给出一些点,选出若干条边使得这些点连通,求总边权的最值。斯坦纳树是NP问题,不存在多项式时间内的解法,求解方法是状压dp。设f[i][j]表示选择若干条边,使得状态为ii的给定点连通,并且当前可以选择下一条边的端点为jj的最小边权和。初始状...原创 2019-10-07 22:55:50 · 356 阅读 · 0 评论 -
csu 2169 排列 2019牛客国庆day3 [状压dp]
题意:给一个长度为 n 的序列 和 m 个二元组. 排列数列 p,使得最小题解:按序放置元素,状态表示位置是否为空。Bitcnt(status)表示此时该选择的元素。ele=p[bitcnt(pre)]若我们以当前状态中所包含的二元组的绝对值作为状态取值的话,状态内部元素的排序方式对状态转移会有影响。绝对值可以理解成,较大值贡献正权,较小值贡献负权。我们可以将状态取值设为:当前...原创 2019-10-04 22:00:25 · 230 阅读 · 0 评论 -
牛客国庆day3 Grid [线段树]
Bobo has points arranged into a matrix with n rows and m columns. The points in the intersection of the i-th row and the j-th column is labeled with (i, j).He is going to perform q operations of the...原创 2019-10-04 16:20:19 · 231 阅读 · 0 评论 -
母函数模板
(x^(v[0]*n1[0])+x^(v[0]*(n1[0]+1))+x^(v[0]*(n1[0]+2))+...+x^(v[0]*n2[0]))(x^(v[1]*n1[1])+x^(v[1]*(n1[1]+1))+x^(v[1]*(n1[1]+2))+...+x^(v[1]*n2[1]))...(x^(v[K]*n1[K])+x^(v[K]*(n1[K]+1))+x^(v[K]*(n1[K...原创 2019-10-02 23:47:27 · 160 阅读 · 0 评论 -
母函数 生成函数 模板 HDU 1398 Square Coins
题意:给出n,求n只有平方数组成的划分题解:显然n的划分数等于(1+x+x^2+...)*(1+x^4+x^8+...)*(1+x^9+x^16+...)*(1+x^的结果中x^n次前的系数#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 200;int...原创 2019-10-01 18:01:26 · 191 阅读 · 0 评论 -
母函数 生成函数 模板 HDU 1028 Ignatius and the Princess III
题意:给出一个N,问N的划分数题解:显然n的划分数等于(1+x+x^2+...)*(1+x^2+x^4+...)*(1+x^3+x^6+...)的结果中x^n次前的系数#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 200;int n;int c1[...原创 2019-10-01 17:46:29 · 185 阅读 · 0 评论 -
指数型母函数 生成函数 [2019上海网络赛 E题 Counting Sequences II]
泰勒展开公式常见公式。指数型母函数例题Counting Sequences II题意:构造一盒序列a[1,n],满足1<=a[i] <=m,其中偶数出现的次数是偶数次#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn...原创 2019-10-01 16:11:48 · 409 阅读 · 0 评论 -
洛谷P4157 [SCOI2006]整数划分 高精度乘法[FFT 快速傅里叶变换]
题目描述从文件中读入一个正整数n(10≤n≤31000)。要求将n写成若干个正整数之和,并且使这些正整数的乘积最大。例如,n=13,则当n表示为4+3+3+3(或2+2+3+3+3)时,乘积=108为最大。输入格式只有一个正整数:n (10≤n≤31000)输出格式第1行输出一个整数,为最大乘积的位数。第2行输出最大乘积的前100位,如果不足100位,则按实际位数输出最...原创 2019-09-28 10:30:19 · 480 阅读 · 0 评论 -
HDU 4609 3-idiots [FFT 快速傅里叶变换]
3-idiots Time Limit: 10000/5000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 10046Accepted Submission(s): 3406 Problem Description ...原创 2019-09-27 19:33:13 · 276 阅读 · 0 评论 -
2019上海网络赛 C [FFT 快速傅里叶变换]
题意:给出三组数组,从每个数组里挑出一个数组成一个三元组(a,b,c),使得这三个数可以组成三角形题解:由于题目n>1000的组数不超过20, FFT的大小与数量无关与最大值有关题源:这题是 HDU 4609 的改编https://blog.csdn.net/Adolphrocs/article/details/101555137/* *FFT */#include &l...原创 2019-09-27 19:27:00 · 251 阅读 · 0 评论 -
CEOI2019 / CodeForces 1192B. Dynamic Diameter
题意:给出一个带权树,每次修改树上一条边的权值,询问树的直径题解:https://www.cnblogs.com/TinyWong/p/11260601.html线段树维护全DFS序#include <bits/stdc++.h>#define FOR(i,s,t) for(int i=(s);i<=(t);i++)#define ROF(i,s,t) for(in...原创 2019-09-22 17:28:06 · 397 阅读 · 0 评论 -
动态树LCT基本操作的简明代码
洛谷P3690 【模板】Link Cut Tree (动态树)(点击进入题目)#include<bits/stdc++.h>#define R register int#define I inline void#define G if(++ip==ie)if(fread(ip=buf,1,SZ,stdin))#define lc c[x][0]#define rc c...转载 2019-09-20 13:13:38 · 239 阅读 · 0 评论 -
第一类斯特林数 First Kind of Stirling Number
题目描述有n个高度分别为1到n的人,从前到后站成一列,站在前面的人会挡住后面比他矮的人。现从前面一共能看见m个人,请问有多少种可能的站法输入格式第一行两个整数n,m含义如图所述输出格式一行一个整数,为答案模1e9+7的值数据范围时间限制1s,空间限制:512M样例1Input3 2Output3样例1解释一共有132、231、213...原创 2019-08-07 10:46:15 · 623 阅读 · 0 评论 -
洛谷P5091 扩展欧拉函数
扩展欧拉函数/* *扩展欧拉函数+快速幂+(龟速乘) */#include <bits/stdc++.h>using namespace std;typedef unsigned long long ll;ll n, m, phi , t, b;ll Pow(ll x,ll p){ if (p == 0) return 1ll; ll tmp =...原创 2019-08-06 17:44:50 · 225 阅读 · 0 评论 -
中国剩余定理 孙子定理(互质与不互质) FZU1402(互质) POJ2891(不互质)
中国剩余定理先看个互质的解得 /* *中国剩余定理 互质 */#include <stdio.h>#include <cstring>#include <iostream>using namespace std;typedef long long LL;///n个mi互质const LL maxn = 20;LL ...原创 2019-08-06 17:40:35 · 425 阅读 · 0 评论 -
[kuangbin带你飞]专题十一 网络流\O HDU 3416 Marriage Match IV
Do not sincere non-interference。 Like that show, now starvae also take part in a show, but it take place between city A and B. Starvae is in city A and girls are in city B. Every time starvae can ge...原创 2019-01-29 21:40:35 · 238 阅读 · 0 评论 -
网络流 最大流(dinic邻接矩阵) 手敲模板
SAP + GAP 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779575SAP + GAP 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/details/84779661dinic 邻接表:https://blog.csdn.net/Adolphrocs/article/de...原创 2018-12-03 21:20:22 · 405 阅读 · 0 评论 -
网络流 最大流(dinic邻接表) 手敲模板
SAP + GAP 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779575SAP + GAP 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/details/84779661dinic 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/d...原创 2018-12-03 21:16:49 · 366 阅读 · 0 评论 -
网络流 最大流(SAP + GAP邻接矩阵) 手敲模板
SAP + GAP 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779575dinic 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779691dinic 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/detail...原创 2018-12-03 21:14:25 · 287 阅读 · 0 评论 -
最大流(SAP + GAP邻接表) 手敲模板
SAP + GAP 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/details/84779661dinic 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779691dinic 邻接矩阵: https://blog.csdn.net/Adolphrocs/article/deta...原创 2018-12-03 21:12:20 · 452 阅读 · 0 评论 -
最小费用最大流
入门看这个博客 https://blog.csdn.net/txl199106/article/details/64441994但是这个博客里的模板比较基础,常数有点大,但是浅显易懂下面这个模板比较快最小费用最大流模板#include<cstdio>#include<string.h>#include<queue>#include<...原创 2018-11-26 23:18:16 · 697 阅读 · 0 评论 -
网络流 最大流 最小割 最小费用流
SAP + GAP 邻接表:https://blog.csdn.net/Adolphrocs/article/details/84779575SAP + GAP 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/details/84779661dinic 邻接矩阵:https://blog.csdn.net/Adolphrocs/article/d...原创 2018-11-23 08:50:04 · 543 阅读 · 0 评论 -
4. Stirling Number(Second Kind)
4. Stirling Number(Second Kind)S(n, m)表示含 n 个元素的集合划分为 m 个集合的情况数 或者是n个有标号的球放到m 个无标号的盒子中, 要求无一为空, 其不同的 方案数例题:1.51NOD1250题目描述:你有一个初始为1到n的顺序数组问题一:恰好进行k次相邻交换,最后有多少不同的排列问题二:进行不多于k次交换(不一定相邻),最...原创 2018-11-03 00:00:04 · 749 阅读 · 0 评论 -
3. Catalan Number
3. Catalan Number 卡特兰数又称卡塔兰数,英文名Catalan number,是组合数学中一个常出现在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)的名字来命名,其前几项为(从第零项开始) : 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 26...原创 2018-11-02 21:26:44 · 453 阅读 · 0 评论 -
2. Lucas Number
2. Lucas Number 1, 3, 4, 7, 11, 18, 29, 47, 76, 123... L[i] = L[i - 1] + L[i - 2] L[1] = 1 L[2] = 3原创 2018-11-02 20:50:17 · 386 阅读 · 0 评论 -
1. Fibonacci Number
1. Fibonacci Number 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610 … f[i] = f[i - 1] + f[i - 2]F[n] = 没什么好说的,有时候记得用高精度有时候还需要矩阵快速幂1.递归 时间复杂度O(2^n)int f(in...原创 2018-11-02 20:40:24 · 324 阅读 · 0 评论 -
5. Bell Number
5. Bell Number n 个元素集合所有的划分数 这里要用到Stirling Number(Second Kind)https://blog.csdn.net/Adolphrocs/article/details/83662466原创 2018-11-03 09:17:14 · 696 阅读 · 0 评论 -
[kuangbin带你飞]专题十一 网络流\M HDU 3605 Escape
题目描述 2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live some of the planet. Now scien...原创 2019-01-30 10:21:44 · 196 阅读 · 0 评论