模板
文章平均质量分 60
一只小陀螺
这个作者很懒,什么都没留下…
展开
-
【小姿势】序列自动机
#include <bits/stdc++.h> using namespace std; struct SUBM { void init(string& str, int _az, char _base) { az = _az, base = _base; nxt.resize(str.length() + 2, vector<int>(az, -1)); for (int i = str.length() + 1原创 2020-07-28 00:24:03 · 124 阅读 · 0 评论 -
ACM-ICPC 2018 焦作赛区网络预赛 E - Jiu Yuan Wants to Eat
You ye Jiu yuan is the daughter of the Great GOD Emancipator. And when she becomes an adult, she will be queen of Tusikur, so she wanted to travel the world while she was still young. In a country, sh...原创 2018-09-16 11:14:02 · 246 阅读 · 0 评论 -
ACM-ICPC 2018 徐州赛区网络预赛 J-Maze Designer (最大生成树+LCA)
题意: 一个N*M的矩形,每个格点到其邻近点的边有其权值,需要构建出一个迷宫,使得构建迷宫的边权之和最小,之后Q次查询,每次给出两点坐标,给出两点之间的最短路径 分析: 可以把每个格点视作视作图的点,隔开两点的边视作图的边,则构建迷宫可以视作求其生成树,剩余的边就是组成迷宫的墙.因为要花费最小,所以使删去的墙权置最大即可,呢么就是求最大生成树即可. 然后每次查询相当于查这个最大生成树上任意...原创 2018-09-10 12:56:26 · 523 阅读 · 0 评论 -
LCA RMQ ST表优化 模板
struct LCA { struct edge { int from, to, w, nxt; } edges[maxn << 3]; int head[maxn << 1], cnt1; int id[maxn << 1], in[maxn << 1], Dep[maxn << 1], Dist[maxn <<...原创 2018-09-21 01:03:50 · 171 阅读 · 0 评论 -
POJ 2449 Remmarguts' Date 第K短路 A* + dij
A*/第k短路模板题 #include <iostream> #include <vector> #include <cstdio> #include <string> #include <cstring> #include <map> #include <algorithm> #include <原创 2018-09-21 13:13:41 · 151 阅读 · 0 评论 -
RMQ ST表 模板
int dp[maxn][20]; void RMQinit(int n) { for (int i = 1; i <= n; i++) { dp[i][0] = height[i]; } int m = int(log((double)n) / log(2.0)); for (int i = 1; i <= m; i++) { for (int j = 1; j +...原创 2018-09-28 15:21:26 · 138 阅读 · 0 评论 -
因数分解模板
因数分解 typedef long long ll; #define pli pair<ll, ll> vector<pli> factor; void init(ll n) { factor.clear(); for (ll i = 2; i * i <= n; i++) { if (n % i == 0) { factor.emplace_ba...原创 2019-01-05 20:25:14 · 312 阅读 · 0 评论 -
LCA 倍增算法
const int MAXN = 1e6 + 100; struct LCA { struct edge { int from, to, w, nxt; }edges[MAXN << 3]; int head[MAXN], cnt, n; int id[MAXN], dep[MAXN], dist[MAXN]; int fa[MAXN][32]; void ad...原创 2019-05-11 09:53:12 · 283 阅读 · 0 评论 -
Min25模板 LOJ6503
#include <bits/stdc++.h> typedef long long ll; const ll MOD = 1e9 + 7; ll qp(ll a, ll b) { ll ret = 1; while (b) { if (b & 1) ret = ret * a % MOD; b /= 2; a = a * a % MOD; } r...原创 2019-09-04 10:23:18 · 171 阅读 · 0 评论