![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模板
_wjunjie
加油吧!
展开
-
HDU 4135 模板——单个数分解质因子+二进制枚举统计1~A中与N互质数个数
#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>#include <iostream>#include<algorithm>#include <set>#include <queue>#inclu...原创 2018-08-15 00:52:42 · 198 阅读 · 0 评论 -
点双联通分量(V-DCC)的求法 & 缩点
用一个stack来维护,求割点的同时求点双联通分量就可以,这里要区别求边双联通分量时只需要在原图中去掉所有割边即可。另外因为一个割点可以同时属于多个不同的点双联通分量(普通点只属于一个),所以这里采用记录联通块中所包含的点的方法来记录每个点所属于的联通块们。初始化: tot=tot2=1; memset(head,0,sizeof(hea...原创 2018-12-31 20:18:30 · 1216 阅读 · 0 评论 -
POJ 2230 手写栈求欧拉回路(有向图/无向图)
题意: 无向图求一条敲好经过所有边正反两次的回路。分析: 无向图求欧拉回路时走过一条边后要把两点之间的两条方向相反的边均标记,这题可以看做一张有向图中求欧拉回路,所以每次只标记一条边就可以了。AC代码:(注意手写栈的数据范围)#include<iostream>#define ll long longusing...原创 2019-01-02 20:27:25 · 244 阅读 · 0 评论 -
有向图强联通分量SCC & 缩点
直接上模板把,有些地方还是不好理解啊。 memset(head,0,sizeof(head)); memset(Next,0,sizeof(Next)); memset(ver,0,sizeof(ver)); memset(ins,0,sizeof(ins)); memset(dfn,0,sizeof(dfn));...原创 2019-01-02 22:47:54 · 199 阅读 · 0 评论 -
牛客2019寒假训练营第一场 Problem D (扩展欧拉定理降幂,求单个欧拉函数板子)
链接:https://ac.nowcoder.com/acm/contest/317/D来源:牛客网小a与黄金街道时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K64bit IO Format: %lld题目描述小a和小b来到了一条布满了黄金的街道上。它们想要带几块黄金回去,然而这里的城管担心他们拿走的太多,于是要求小a和...原创 2019-01-22 21:08:43 · 324 阅读 · 0 评论 -
二维RMQ模板
链接:https://blog.csdn.net/VictoryCzt/article/details/83684082HDU 2888 AC代码:/**Wjvje**/#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>#include <...原创 2019-02-17 23:48:56 · 130 阅读 · 0 评论 -
UVA 193(无向图最大团模板)
无向图最大团概念:点集中任意两点之间均可由边相连。无向图最大独立集:任意两点无边相连。定理:无向图最大独立集=补图最大团,反之亦然。(二分图那个很特殊)。暴力剪枝的模板时间复杂度:o(n*2^n):(怎么能过的,,,,,,)UVA 193 AC代码:#include<iostream>#define LL long long#define par pair...原创 2019-03-11 12:37:28 · 214 阅读 · 0 评论 -
位图筛大素数模板
LightOJ1289:AC代码:/**Wjvje**/#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>#include <iostream>#include<algorithm>#include <set&...原创 2019-03-18 22:28:50 · 194 阅读 · 0 评论 -
POJ 1151 (扫描线+线段树优化+离散化处理,模板)
~by Wjvje 2019-5-2题目链接:http://poj.org/problem?id=1151题目描述:AtlantisTime Limit:1000MS Memory Limit:10000K Total Submissions:28239 Accepted:10135 DescriptionThere ar...原创 2019-05-02 22:35:11 · 179 阅读 · 0 评论 -
边双联通分量(e-DCC)的求法 & 缩点
思路:求出给出的无向图中所有的桥,从原图中删去桥,得到到的所有联通块均为边双联通分量。所以有两个步骤:①tarjan求出所有割边并标记②dfs划分联通块#define ll long longusing namespace std;const int SIZE=100010;int head[SIZE];int ver[SIZE*2];int Next[2*SI...原创 2018-12-30 22:07:11 · 542 阅读 · 0 评论 -
(模板)割点判定
定理:①x不是搜索树上的根节点(dfs起点)时,x是割点当且仅当搜索树上存在x的一个子节点y,满足dfn【x】<=low【y】。#define ll long longusing namespace std;const int SIZE=100010;int head[SIZE];int ver[SIZE*2];int Next[2*SIZE];int dfn[...原创 2018-12-30 21:38:37 · 177 阅读 · 0 评论 -
割边判定(模板)
无向边(x,y)是桥,当且仅当搜索树上存在x的一个子节点y,满足:dfn【x】<low【y】。low【x】数组称作回溯值:指x的子树中的节点中或者这些子节点+x父节点(非树边连接)中时间戳值最小的点,#include <cstdio>#include <cmath>#include <cstring>#include <c...原创 2018-12-30 21:11:49 · 410 阅读 · 0 评论 -
模板——求单个数 欧拉函数值
ll getphi(ll n){ ll ans=n;//容易记错; for(ll i=2;i*i<=n;++i)//sqrt即可 { if(n%i==0) { ans=ans/i*(i-1); while(n%i==0)n/=i; } } if(n>...原创 2018-08-15 01:37:36 · 237 阅读 · 0 评论 -
高精度模板
#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>#include <iostream>#include<algorithm>#include <set>#include <queue>原创 2018-08-16 00:34:19 · 94 阅读 · 0 评论 -
线段树基础
线段树模板:(单点增加+区间查询(查询序列最大值))#include<bits/stdc++.h>using namespace std;const int SIZE=100100;struct SegmentTree{ int l,r; int dat;}t[SIZE*4];int a[SIZE];void build(int p,int l...原创 2018-11-09 20:50:17 · 116 阅读 · 0 评论 -
CH6202 黑暗城堡(最短路径生成树+二叉堆优化的dijkstra求最短路模板)
6202 黑暗城堡0x60「图论」例题描述: 在顺利攻破Lord lsp的防线之后,lqr一行人来到了Lord lsp的城堡下方。Lord lsp黑化之后虽然拥有了强大的超能力,能够用意念力制造建筑物,但是智商水平却没怎么增加。现在lqr已经搞清楚黑暗城堡有N个房间 (1≤N≤1000),M条可以制造的双向通道,以及每条通道的长度。 lqr深知Lo...原创 2018-12-08 17:19:58 · 477 阅读 · 2 评论 -
树形dp求树直径、两次dfs求树直径
树形dp求树直径:#include<bits/stdc++.h>#include<ctime>#define ll long longusing namespace std;const int N=100010,M=1000010;int head[N];int ver[M];int edge[M];int Next[M];bool v[N];in...原创 2018-12-10 22:37:00 · 1375 阅读 · 0 评论 -
离线处理,LCA的Tarjan算法 HDU 2586
首先,什么是离线算法,在线算法呢。在查询问题中,离线算法需要先将所有查询全部输入,然后统一计算,最后再同意输出。就比如下面介绍的Tarjan求LCA;在线算法就是像前面树上倍增求LCA一样,预处理(求倍增过程中所需要的量们)所花费的时间相对于整个程序来说较大,而查询速度相对整个程序来说很快。 LCA的Tarjan算法的核心是“向上标记”,即不同的点有不同的标记...原创 2018-12-17 21:13:56 · 325 阅读 · 0 评论 -
POJ 1201 Intervals(差分约束系统,最长路正环判断)
题目描述: IntervalsTime Limit:2000MS Memory Limit:65536K Total Submissions:32163 Accepted:12444 DescriptionYou are given n ...原创 2018-12-23 09:22:48 · 244 阅读 · 0 评论 -
HDU 1255(线段树优化扫描线——矩形交集)
~by Wjvje 2019-5-3题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1255题目描述: 覆盖的面积Time Limit: 10000/5000 MS (Java/Others)Memory Limit: 65536/32768 K (...原创 2019-05-03 21:20:32 · 388 阅读 · 0 评论