算法竞赛
文章平均质量分 85
算法练习笔记,使用的OJ包括:洛谷、acwing、牛客、cf
A-Egoist
这个作者很懒,什么都没留下…
展开
-
数论基础知识
文章目录质数1.质数的判定——试除法2.分解质因数——试除法3.筛法埃氏筛 O(nloglogn)O(n\log\log{n})O(nloglogn)欧拉筛(线性筛) O(n)O(n)O(n)约数1.试除法求一个数的所有约数2.约数个数3.约数之和4.欧几里得算法(辗转相除法)欧拉函数欧拉定理求欧拉函数定义求法证明模板筛法求欧拉函数(基于线性筛)证明:模板快速幂模板快速幂求逆元乘法逆元定义费马定理扩展欧几里得算法裴蜀定理定义证明扩展欧几里得算法高斯消元 质数 1.质数的判定——试除法 O(n)O(n)O原创 2021-04-07 08:47:50 · 592 阅读 · 0 评论 -
常用STL知识点
常用STL知识点 STL 迭代器 迭代器:iterator 用法: vector<int> a; for (vector<int>::iterator it = a.begin(); it != a.end(); it ++) cout << *it << ' '; map<int, int> b; for (map<int, int>::iterator it = b.begin(); it != b.end(); it ++) pr原创 2021-04-05 17:05:37 · 184 阅读 · 0 评论 -
最短路算法
朴素Dijkstra 模板: // 稠密图 #include <iostream> #include <algorithm> #include <cstring> using namespace std; const int INF = 0x3f3f3f3f; typedef long long ll; const int N = 510; int n, m, g[N][N], dist[N]; // g数组存边,dist数组表示从1到i点的最短距离 bool vis[N原创 2021-03-04 15:26:40 · 193 阅读 · 1 评论 -
Codeforces Round #706 (Div. 2)
Codeforces Round #706 (Div. 2) A Split it! Tag:签到、思维 题意: 给定一个字符串s,参数k,字符串长度为n,问是否存在k+1个子串ai使得 s = a1 + a2 + a3 + ··· + ak + ak + 1 + r(ak) + r(ak - 1) + ··· + r(a2) + r(a1)。 思路: 首先证明:r(a3) + r(a2) + r(a1) = r(a3 + a2 + a1),然后我们就可以得到 a1 + a2 + a3 + a4 + ···原创 2021-04-07 08:50:47 · 151 阅读 · 0 评论