摘要: 1 /* 2 归并排序模版 3 对n个数进行排序 4 时间复杂度:O(nlogn); 5 利用分治思想,对比左半边和右边边放入一个暂时的数组进行排序 6 */ 7 #include 8 using namespace std; 9 const int maxn = 1005; 10 int a[maxn], t[maxn]; 11 void merge(int a[], i... 阅读全文
posted @ 2017-08-14 11:58 Posase 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 快速幂模版 3 求x^t%mod 4 时间复杂度:O(logn) 5 注:递归可能爆栈 6 原理:x^t = (x^(t/2))^2 + x^(n%2); 7 */ 8 #include 9 using namespace std; 10 long long quick_pow(long long x, long long t, long long mod) 1... 阅读全文
posted @ 2017-08-14 11:53 Posase 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 匈牙利算法模版邻接表版 3 最大匹配问题 4 时间复杂度:O (nm) 5 */ 6 #include 7 #include 8 #include 9 using namespace std; 10 const int maxn = 505; 11 vector v[maxn];//x = v[i][j]表示i可以与x匹配 12 int vis[maxn],... 阅读全文
posted @ 2017-08-14 10:58 Posase 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 1 //匈牙利算法模版题 2 #include 3 #include 4 #include 5 using namespace std; 6 const int maxn = 505; 7 vector v[maxn]; 8 int vis[maxn],match[maxn]; 9 bool dfs(int t) 10 { 11 for(int i = 0; i ... 阅读全文
posted @ 2017-08-14 10:47 Posase 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 匈牙利算法模版题 3 邻接表实现,邻接矩阵超时 4 最大匹配问题 5 */ 6 #include 7 #include 8 #include 9 using namespace std; 10 const int maxn = 505; 11 vector v[maxn];//x = v[i][j]表示i可以与x进行匹配 12 int vis[maxn],... 阅读全文
posted @ 2017-08-14 10:46 Posase 阅读(153) 评论(0) 推荐(0) 编辑