模板汇总(更新中...) 这里收录的模板因为是自用的,所以基本只有代码,没有多少代码解释,敬请谅解。 1.IO流加速:链接 2.数据结构并查集:链接 树状数组:链接 线段树:链接 主席树:链接 3.图论传递闭包:链接 二分图匹配:链接 网络流:链接 最短路算法:链接 树链剖分:链接 4.数论逆元:链接 各种筛的模板:链接 5.字符串字符串哈希:链接 KMP算法:链接 字典树:链接 马拉车算法:链接 6.哈希重构unorde 2100-08-16 formwork 模板
graph 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586#include<bits/stdc++.h>#include 2022-08-23 formwork 模板
chaos 123456789function<ll(ll, ll)> qpow = [&](ll _a, ll _b) ->ll { ll res = 1; while (_b) { if (_b & 1) res = res * _a % MOD; _a = _a * _a % MOD; _b &g 2022-08-18 formwork 模板
Maven 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210 2022-06-10 spring boot java maven
复杂密码生成器 12345678910111213141516171819202122232425262728293031323334353637383940import java.util.*;public class Main { private static final String []range = new String[5]; private static int[] sum = 2022-05-01 formwork password
传递闭包模板 Tips:用于解决A<B,B<C等不等式传递问题(也可以用拓扑排序解决) 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 2022-04-29 formwork 模板
字符串哈希模板 Tips:可以通过正反哈希值的判断出该子串是否是个回文,也可以通过哈希值O(N)的复杂度进行字符串匹配 123456789101112131415161718192021222324252627282930313233343536const int MAXN = 1e6 + 5e3;int n;string s;ll Hash[5][MAXN], Rhash[5][MAXN];ll mod[] = 2022-04-29 formwork 模板
树链剖分模板 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210 2022-04-13 formwork 模板
CF 1661D Progressions Covering(差分+线段树) 题目链接:点击跳转 题意: 有两个长度相等的序列a,b,a序列开始全为0,b序列有题目给出,每次可以选择a中一段长度为k的序列,将该范围的数依次加上1,2,3…k,问最少多少次操作,能使对于任意i,使得ai >= bi。 思路: 最后一位只能够使用k来消除,而用k消除也恰好是最快的,那么可以从后往前开始处理,但是要怎么更新序列呢,可以使用差分来给修改的每位都加上i(操作次数),用线段树来维护 2022-04-12 acm codeforces
CF 1661C Water the Trees(思维) 题目链接:点击跳转 题意: 公园里有N棵树,在奇数天浇水可以使树的高度+1,偶数天+2(每天只能浇一次水,可以选择不浇),问最少需要多少天,能使得所有树的高度一致。 思路: 如果当前树与最高的那棵树的高度差为奇数,那么就意味着该树至少要占用一次奇数天(只能多,不能少),而其他的均可通过偶数天完成。 若偶数天如果大于奇数天,那么可以通过将一个偶数天拆成2个奇数天来减少时间。 为保持奇数偶数尽量相 2022-04-12 acm codeforces