![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模板
文章平均质量分 92
JokerJim
这个作者很懒,什么都没留下…
展开
-
【题解&杜教筛总结】51Nod1238 最小公倍数和V3
前置知识:杜教筛。(不会点这里)。大片公式预警!!!题意求∑i=1n∑j=1nlcm(i,j)\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}\text{lcm}(i,j)i=1∑nj=1∑nlcm(i,j)。(1≤n≤10101\leq n\leq 10^{10}1≤n≤1010)题解简单回顾开始之前,先来回顾一下几个和杜教筛有关的式子(定义∗*∗为数论函数的狄利克雷卷积):KaTeX parse error: No such environment:原创 2020-06-03 14:58:32 · 2843 阅读 · 0 评论 -
【算法&题解】莫比乌斯反演及一些经典套路
【算法&题解】莫比乌斯反演及一些经典套路首先声明,由于我太菜了,本文很多式子可能并不会有详细的证明。若要了解莫比乌斯反演最基本的证明,可以去这里,本文主要讲解一些套路。莫比乌斯函数我们定义莫比乌斯函数如下:设n=∏i=1mpiai,k=∏i=1maiμ(n)={1(n=1)(−1)m(k=1)0(k>1)设n=\prod_{i=1}^{m} p_i^{a_i},k=...原创 2019-04-11 20:21:49 · 1300 阅读 · 0 评论 -
【数据结构】块状链表(分块大法好)
问题引入众所周知,数组索引方便,但插入和删除困难(复杂度极高);而链表恰恰相反,索引困难,而插入和删除简单。那么当我们遇到既要动态插入删除,又要快速索引元素的问题时,有没有一种数据结构能够同时快速支持这两个操作呢?以我们老祖宗的强大的智慧,答案当然是有,它就是——序列之王Splay!!!不好意思,走错片场了……重来一次。它就是——块状链表!!!整体思想看到它的名字,估计你都能猜出来...原创 2019-05-09 19:57:46 · 7531 阅读 · 2 评论 -
【算法】搜索进阶
搜索是考场骗分利器,只要你能写出一手复杂度优秀的搜索,那至少应该不会爆0。 ——某位巨佬一些玄学的东西(剪枝、小技巧、随机化等)神奇的剪枝P1585 魔法阵。我们发现题目中的模数比较特别,是n∗m2\frac{n*m}{2}2n∗m,这暗示我们可以把搜索的过程分成两部分(别想歪了,这题跟Meet-In-Middle一点关系都没有)。首先我们对于...原创 2019-05-15 10:10:27 · 714 阅读 · 1 评论 -
【模板】圆的面积并(自适应辛普森乱搞)
题意先上一道模板题:SP8073 The area of the union of circles通过点和半径的方式给出平面上的一些圆,求这些圆覆盖的总面积。题解和这道题类似的还有P1222 三角形 。不过这道题由于一些特殊的性质,直接扫描线就可以过,并且效率远远高于自适应辛普森。还是来看这道题。我们可以把平面上的一堆相交的圆看成一个整体函数,我们要求的就是每一段函数的面积和。很明显可以...原创 2019-06-05 20:00:59 · 536 阅读 · 0 评论 -
【模板】最小矩形覆盖
前置芝士:凸包,旋转卡壳,向量的基本运算题意给出平面上的一堆点,找出一个能够覆盖所有点的面积最小的矩形,输出面积及四个顶点的坐标。分析一眼计算几何好毒瘤题。(废话)经过一番涂涂画画之后,我们可以非常感性地得出一个结论:最后这个矩形一定有一边和这些点的凸包上的一条边重合。也就是说,最后的矩形应该是长成下面这样子的。那么我们很显然需要先求出凸包,然后枚举凸包上的一条边来和矩形底边重叠。...原创 2019-05-31 15:33:33 · 2676 阅读 · 0 评论 -
【题解】CF1025F Disjoint Triangles
题意传送门。给出平面上的一些点,从其中选出6个点,组成两个三角形,求使两个三角形不相交(即平面上不存在一个点同时属于两个三角形)的方案数,如果选的点相同但组成的三角形不同则算不同的方案。分析首先有一个结论:如果两个三角形不相交,那么一定存在两条内公切线。如下图(感性理解一下):那么我们就可以枚举内公切线了。对于输入的每一个点,我们让它和其他n−1n-1n−1个点组成直线,并进行极角排...原创 2019-06-03 11:43:47 · 525 阅读 · 0 评论 -
【题解】P4178 Tree
前置芝士P3806 【模板】点分治1 。不过数据真是水的可以,第一次我数组开小,过了;第二次我分治的时候没找中心,还是过了……所以也可以做P4149 Race 。题意和点分治模板很像:求树上距离小于等于kkk的路径数量。(把模板的等于改成了小于等于,并且需要统计路径数量)分析由于题目变成了小于等于,那么我们就不能再用原来那套开桶的办法了。于是我们考虑把当前根的所有子树中的节点拉出来统计方...原创 2019-06-12 10:04:08 · 370 阅读 · 0 评论 -
【数据结构】线段树的扩展与应用
线段树是一种非常基础的数据结构,但有的时候仅仅是普通的线段树无法满足需求,那么我们就要对其进行一些扩展。Chapter1:标记永久化实现普通的线段树通过懒标记(Lazy Tag)以O(nlogn)O(nlogn)O(nlogn)的复杂度实现对序列的区间修改和查询。但有些时候想要向下push_downpush\_downpush_down标记和向上push_uppush\_uppush_up维...原创 2019-07-16 08:07:00 · 5853 阅读 · 0 评论 -
【算法】扩展卢卡斯详解
前置芝士扩展卢卡斯相对较为复杂,需要较多的前置芝士。快速幂质因数分解组合数公式扩展欧几里得(exgcd)求逆元中国剩余定理(或excrt)熟练阅读Latex至于卢卡斯定理,那真的不重要。问题形式卢卡斯(LucasLucasLucas)和扩展卢卡斯(exLucasexLucasexLucas)都用于求解形如Cnmmod &ThinSpace...原创 2019-04-01 10:01:07 · 1994 阅读 · 1 评论 -
【题解】最小路径覆盖方案(最大流求二分图最大匹配)
题意原题传送门思路在解决这道题之前,我们先讲一下用最大流求解二分图最大匹配的做法。如果巨佬您已经熟练掌握了,那完全可以跳过。不过你都这么巨了,怎么会来看我的blog呢我们一般是把每个点拆成两个,分为出点和入点,顾名思义出点连的边都是从他出发,连向其他点;入点连的边都是从其它点出发,连到当前点。然后我们再建立一个超级源点和一个超级汇点,从源点向所有点的出点连边,从所有入点向汇点连边,然后在图...原创 2019-03-22 19:36:38 · 944 阅读 · 0 评论 -
高精度BigInt模板类
精度计算是一种程序设计的算法。由于中央处理器的字长限制,如32位CPU中一个整数最大只能取值4,294,967,295。因此在进行更大范围的数值计算中,往往要采取模拟手段。通常通过分离字符的方法通过数字数组进行输入。通过数组倒序输出。通过模拟竖式计算进行计算。一般而言,主要模拟的是按位运算,可以用不同的进位制达成不同的目的。 ——摘自维基百科说白了,高精度运算就是为了解决计算机内类型的数据...原创 2018-08-19 16:51:27 · 511 阅读 · 0 评论 -
【tarjan强连通分量】洛谷P1726 上白泽慧音
【tarjan强连通分量】洛谷P1726 上白泽慧音题目传送门妥妥的强连通模板啊(详细解释戳这里)#include <bits/stdc++.h>#define MAXN 5005#define MAXM 50005*2using namespace std;int n, m, cnt;int head[MAXN], Next[MAXM], vet[MAXM]...原创 2018-10-11 16:49:41 · 226 阅读 · 0 评论 -
【模板】树状数组
【模板】树状数组具体原理:传送门:C++树状数组详解,DALAO解释的非常详细代码#include <bits/stdc++.h>#define MAX 2000005#define ll long longusing namespace std;int n, m;int a[MAX];int lowbit(int x){ return x &...原创 2018-10-26 19:25:28 · 144 阅读 · 0 评论 -
【模板】LCA
【模板】LCA最近公共祖先树上倍增求LCA具体分析(转)戳这里代码:#include &lt;iostream&gt;#include &lt;cstdio&gt;#define MAX 500001using namespace std;void print(int x){ while(!x){ return; } print(x/1...原创 2019-01-10 15:15:30 · 152 阅读 · 0 评论 -
中国剩余定理及扩展
文章目录中国剩余定理用途求解方法例题&amp;amp;代码[洛谷P1495 曹冲养猪](https://www.luogu.org/problemnew/show/P1495)扩展中国剩余定理用途求解方法例题&amp;amp;代码洛谷P4777 【模板】扩展中国剩余定理(EXCRT)洛谷P3868 [TJOI2009]猜数字完结撒花GL &amp;amp;&amp;amp; HF!!!中国剩余定理用途 中国剩余定理一般用...原创 2019-03-05 18:48:41 · 570 阅读 · 0 评论 -
【挖坑】【GSS系列】GSS1:区间最大子段和
Can you answer these queries? GSS系列是spoj出品的一套数据结构好毒瘤题,主要以线段树、平衡树和树链剖分为背景,进行了一些操作的魔改,使得难度远超模板题,但对于思维有极大的提升。 所以我会选择一些在我能力范围内的题挖坑选讲,构成一个GSS系列。至于剩下那些,等我成为巨佬弄懂了再说吧。GSS1:区间最大子段和原题传送门(洛谷)题意 给定一个序列...原创 2019-03-15 08:18:31 · 455 阅读 · 0 评论 -
【算法】BSGS算法的推导与实现
BSGS简介BSGS算法,全称Baby Step Giant Step算法,用于求解关于xxx的形如ax≡b(modp)a^{x} \equiv b \pmod pax≡b(modp) ,ppp为质数的方程。求解过程不妨设x=im−jx=im-jx=im−j,其中m=⌈p⌉m=\lceil\sqrt{p}\rceilm=⌈p⌉,j∈[0,m)j \in [0,m)j∈[0,...原创 2019-03-19 19:21:32 · 558 阅读 · 0 评论