随笔分类 - 专题笔记
摘要:搜索 所谓搜索就是列举所有的可能,也是一种暴力的算法。 根据搜索优先级,一般分为深度优先和广度优先。 深度优先搜索(Depth First Search):一条路走到底,走不通再回头。 广/宽度优先搜索(Breadth First Search):一层一层的搜索。 搜索问题解决步骤 确定问题:连通块
阅读全文
摘要:二分本质 给定一个具有单调性的区间 $[l,r]$,中间切一刀 $mid=(l+r)/2;$ 可以将区间分为两个子区间,其合法的答案一定在其中的一个子区间中,继续对该区间进行二分。 按照上述原理,有一个问题:$mid$ 这个位置分给左右那个区间? (1)分给左区间,相当于:$[l,r] = [l,m
阅读全文
摘要:树状数组基础 区间修改,单点查询:P3368 【模板】树状数组 2 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1 x y k:将区间 $[x, y]$ 内每个数加上 $k$。 2 x:输出第 $x$ 个数的和。 数据范围 对于 $100%$ 的数据:$1 \leq N, M\le 50
阅读全文
摘要:高精度计算_string:https://www.cnblogs.com/hellohebin/p/16178318.html 上文对高精度计算原理有过分析,此处我们不在赘述。 注意:本文代码中使用了引用,那么会对原数据进行修改,如果对于斐波那契这种存在对某个数据进行二次操作的情况,可能会存在问题,
阅读全文
摘要:目录什么是动态规划动态规划问题的基本分析步骤背包问题01背包完全背包多重背包混合背包分组背包二维费用背包子序列问题最长上升子序列(Longest Increasing Subsequence - LIS)最长公共子序列(longest common subsequence - LCS)区间DPP17
阅读全文
摘要:[toc] # LemonLime 测评 ## 前言 - 迎难而上,遇山开山,遇水搭桥。 - Lemon 和 LemonLime 是差不多的,后者是升级版。 ## 软件下载与使用 ### 软件下载 Dev-C++:https://pc.qq.com/detail/16/detail_163136.h
阅读全文
摘要:目录概念邻接矩阵Floyed-Warshall - 弗洛伊德算法邻接表:vectorDijkstra - 迪杰斯特拉算法Dijkstra - 堆优化前向星基于边集数组的 bellman-ford 算法链式前向星基于链式前向星的 dijkstra 及其堆优化基于链式前向星的 spfa 算法拓扑排序强连
阅读全文
摘要:高精度计算 对于一些比较大的数据,无法直接通过四则运算得到结果,那么这时候需要的就是高精度计算,也叫大数计算。 虽然高精度的计算不同于普通运算,但是其运算的原则和规律任然相同。 基本思想:将大数据拆分为小数据,对小数据进行四则运算,再判断进位借位。 实现方式:将数据按位存储在数组中,至于是否倒序存储
阅读全文
摘要:目录符号约定奇数偶数算术平方根素数约数裴蜀定理同余方程快速幂 符号约定 整除:\(a|b\),即 \(b\) 整除于 \(a\),或 \(a\) 为 \(b\) 的因子。 互质:\(m⊥n\),即 \(gcd(m,n)=1\)。 取整:\(\lceil x \rceil\) 向上取整,\(\lflo
阅读全文