![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模板
DaRK_52
菜的不行
展开
-
prim&&kruskal模板
#include<stdio.h>#include<stdlib.h>double min[10001]={0};long long x[10001]={0},y[10001]={0},vis[10001]={0};double cal(int a,int b){ double t; t=sqrt((x[a]-x[b])*(x[a]-x[b])+...原创 2018-09-09 13:34:45 · 132 阅读 · 0 评论 -
三分模板 洛谷3382
题目传送门:https://www.luogu.org/problemnew/show/P3382三分用于求单峰函数极值,假如一个函数的峰值不止一个,那估计只能先求导数然后找导数为0的驻点,枚举驻点值排序最后求最大最小值(洛谷上次好像有场比赛有考这个思想,然而当时没有理解他每一句话之中的深意)。三分的原理是这样的,一个单峰函数一定是在某一段区间上增,某一段区间上减,对于一个先增后减的函数,假如...原创 2018-09-17 00:33:52 · 189 阅读 · 0 评论 -
最近公共祖先模板
洛谷3379:https://www.luogu.org/problemnew/show/P3379稍微谈下理解,首先建边的时候建两条因为开始无法判断哪些是父节点哪些是子节点,首先dfs1处理每一个点的深度,和每一个点2^k之前的祖先的值,具体维护方法类似动态规划,就是你爷爷是你爸爸的爸爸,即dp[son][i+1]=dp[dp[son][i]][i];(因为2^i+1辈祖先是2^i辈祖先的2...原创 2018-09-19 00:26:01 · 439 阅读 · 0 评论 -
扩展欧几里得模板
数论,字符串,动态规划堪称我的三大天敌(说到底还是自己笨)。题目传送门:https://www.luogu.org/problemnew/show/P1082 是2012noip的同余方程基本就是扩欧的模板题。关于扩展欧几里得,我们都知道辗转相除法是用来求两个数的最大公约数的。那么对于一个不定方程ax+by=c,可以把他看成ax+by=k(gcd(a,b));,想让这个方程有整数解必须使c...原创 2018-10-01 20:12:56 · 250 阅读 · 0 评论 -
洛谷1962 矩阵快速幂模板
本来以为很难的,但仔细想想和普通快速幂好像写法没什么区别尽管等会代码由于我太蒟蒻加暴力没写循环直接全部赋值,难点在于构造矩阵,这个题还挺明显的但自己还不是想不到。然后就是一般的快速幂n%2==1就乘,不是就把a数组翻倍。附上很丑的代码:#include<stdio.h>#include<stdlib.h>long long qmpow(long long n){...原创 2018-10-07 15:24:57 · 199 阅读 · 0 评论 -
浅谈搜索
搜索作为最基础的算法之一是十分重要的,虽然思想简单但是使用得当后效果也会非常好。本文就从搜索的基础来讲(无图,语言混乱求轻喷)。什么是搜索? 简单地理解就是通过暴力计算,枚举后去找到正确答案,比如1到10有几个奇数这个问题,从搜索的角度来考虑就是一个循环1到10每个判断一下是不是奇数,然后得出结果(也许此处比喻有点问题,但总体意思差不多)。遇到一些复杂问题时,如果不考虑时间复杂度的情况下...原创 2019-06-11 20:15:20 · 326 阅读 · 0 评论