Kruskal算法(适用于稀疏图) 1、将所有边按权重从小到大排序 O(mlogn) 2、枚举每条边a,b,权重c O(m) if a,b不连通 将这条边加入集合中 判断连通 使用并查集来判断两个连通块是否连通 #include<iostream> #include<algorithm> using ...
Description 思路 cf题解中合法的x的处于一段连续区间不太明白。在知道这个前提下,将E1的代码改成二分即可。 有空再补回来。 #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #incl ...
分类:
其他好文 时间:
2020-07-04 19:00:50
阅读次数:
82
原题链接 题解 一个三维的bfs,直接向6个方向走就是了,直接套模板 #include <iostream> #include <algorithm> #include <queue> using namespace std; typedef struct node{ int x, y, z; no ...
分类:
其他好文 时间:
2020-07-04 15:21:05
阅读次数:
99
朴素Dijkstra算法 时间复杂是 O(n^2+m), n 表示点数,m 表示边数 适合稠密图 #include<cstring> #include<iostream> #include<algorithm> #define mm(a,x) memset(a,x,sizeof(a)) #defin ...
分类:
编程语言 时间:
2020-07-04 11:50:16
阅读次数:
88
先看一个例子: #include <numeric> #include <vector> #include <algorithm> #include <iterator> #include <thread> #include <iostream> #include <functional> usin ...
分类:
编程语言 时间:
2020-07-04 01:41:11
阅读次数:
74
Turbo译码算法: 1,MAP,Maximum A Posteriori,最大后验概率 2,LOG-MAP,Logarithm Maximum A Posteriori,对数最大后验概率(简化MAP运算,对数将乘除运算转换为加减运算--仍需计算复杂的对数) 3,MAX-LOG-MAP,Maximu ...
分类:
编程语言 时间:
2020-07-03 17:52:32
阅读次数:
82
最小圆覆盖 主要是我太菜了不会证明qwq,上面的博客讲的非常好。 主要是存代码: #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<cmath> using namespace std ...
分类:
其他好文 时间:
2020-07-03 10:23:25
阅读次数:
46
题目地址 简单的贪心,POJ不能用C11,硬是把C11的特性改回来了 代码 #include <algorithm> #include <iostream> #include <vector> using namespace std; const int INF = 1e9; struct node ...
分类:
其他好文 时间:
2020-07-03 00:43:01
阅读次数:
63
题意:给定一个数组a[1],a[2],...,a[n],他可以进行如下的m个操作,一个操作可以是如下三个的其中一个:1.打印[l, r]的和,即求$\sum_^a[i]$。2.对[l, r]之间的每个数取模x,\(a[i] = a[i]\quad mod\quad x\)。$3.让a[k] = x$ ...
分类:
其他好文 时间:
2020-07-02 21:33:07
阅读次数:
50
MD5信息摘要算法(Message Digest Algorithm) md5是一种密码散列函数,可以生成128位(16字节)的散列值,用于确保信息传输完整一致。 这里举例如何在16机器上实现md5算法: md5.h 1 #ifndef MD5_H 2 #define MD5_H 3 4 typed ...
分类:
编程语言 时间:
2020-07-02 13:39:17
阅读次数:
47