模板库
「已注销」
这个作者很懒,什么都没留下…
展开
-
求逆序对的模板(分治法)
int ans = 0;void merges(int *a, int lef, int righ){ if(lef == righ) /*边界*/ return ; int mid = lef + (righ - lef) / 2; merges(a, lef, mid); /*递归左半*/ merges(a, ...原创 2019-05-06 21:29:25 · 525 阅读 · 0 评论 -
生成1~n的排列(模板),生成可重集的排列(对应紫书P184, P185)
生成1~n的排列:#include<iostream>using namespace std;void print_permutation(int n, int *A, int cur) /*n代表这个排列中的元素数*/{ if(cur == n) /*边界*/ { for(int i = 0; i < n; i++)...原创 2019-05-14 19:37:46 · 256 阅读 · 0 评论 -
ACM刷题指南+模板
ACM刷题指南+模板转载 2019-05-07 21:46:44 · 1550 阅读 · 0 评论 -
ACM算法模板 · 一些常用的算法模板-模板合集(打比赛专用)
ACM算法模板 · 一些常用的算法模板-模板合集(打比赛专用)转载 2019-05-11 11:37:23 · 568 阅读 · 0 评论 -
使用new新建动态二维数组(多注意)
#include<iostream>using namespace std;int main(){ //设想要建立一个rows行,cols列的矩阵 //使用new进行新建 int rows, cols; cin >> rows >> cols; int **Array = new int*[rows]; //开...原创 2019-05-27 22:02:48 · 753 阅读 · 0 评论 -
走迷宫(bfs, 最短路)
Input10 10#S######.#......#..#.#.##.##.#.#........##.##.####....#....#.#######.#....#......####.###.....#...G#Output22代码:#include<iostream>#include<cstring>#inclu...原创 2019-05-21 20:50:27 · 944 阅读 · 0 评论 -
ACM模板(转载)
Index分类细则说起分类准则,我也是很头疼,毕竟对于很多算法,他并不是单调的,而是多方面的都挂得上钩。所以,从始至终,分类准则一直都是我很纠结的问题。 经过思量,首先分出比较主流的几类:Number、Graph、Network、Structure、Geometry; 接着,考虑到C++是ACM的重头戏,而STL又是其中浓墨重彩的一笔,所以专门分出一类STL来总结一下; 然后又分出Str...转载 2019-06-09 21:41:17 · 3561 阅读 · 0 评论 -
【lower_bound、upperbound讲解、二分查找、最长上升子序列(LIS)模版】
二分lower_boundlower_bound()在一个区间内进行二分查找,返回第一个大于等于目标值的位置(地址)upper_boundupper_bound()与lower_bound()的主要区别在于前者返回第一个大于目标值的位置int lowerBound(int x){ int l=1,r=n; while(l<=r){ int m...原创 2019-08-01 22:58:34 · 240 阅读 · 0 评论