摘要: 归并排序并求逆序对: void merge_sort(int l , int r) { if(r-l > 0)//如果整个区间中元素个数大于1,则继续分割 { int mid = (l+r) / 2 ; int i = l; //辅助数组的下标 int p = l , q = mid+1; merg 阅读全文
posted @ 2021-08-16 16:12 hhhgzj 阅读(42) 评论(0) 推荐(0)
摘要: 链接:https://ac.nowcoder.com/acm/contest/11211/A来源:牛客网 题目描述 大科学家dddddd最近在研究转基因白菜,白菜的基因序列由一串大写英文字母构成,dddddd经过严谨的推理证明发现,只有当白菜的基因序列呈按位非递减形式时,这株白菜的高附加值将达到最高 阅读全文
posted @ 2021-05-28 21:23 hhhgzj 阅读(148) 评论(0) 推荐(0)
摘要: 题目描述 你有一张某海域NxN像素的照片,"."表示海洋、"#"表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. ....... 其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。 由于全球变暖导致了海 阅读全文
posted @ 2021-04-17 15:43 hhhgzj 阅读(73) 评论(0) 推荐(0)
摘要: 1 #include<bits/stdc++.h> 2 using namespace std; 3 int ve[7][7]; 4 bool visit[7]; 5 int ans=0; 6 set<set<int> > se; 7 void dfs(int x,set<int> s) 8 { 9 阅读全文
posted @ 2021-03-13 14:23 hhhgzj 阅读(57) 评论(0) 推荐(0)
摘要: 一.算法简介 一般地,一元n次多项式的求值需要经过(n+1)*n/2次乘法和n次加法,而秦九韶算法只需要n次乘法和n次加法。在人工计算时,一次大大简化了运算过程。 二.算法应用 1.大整数取模(hdu 1212 Big Number) (1)题意:给你一个长度不超过1000的大数A,还有一个数值不超 阅读全文
posted @ 2021-01-14 14:30 hhhgzj 阅读(2674) 评论(0) 推荐(0)
摘要: long long Mode(long long a, long long b, long long mode) { long long sum = 1; while (b) { if (b & 1) { sum = (sum * a) % mode; b--; } b /= 2; a = a * 阅读全文
posted @ 2021-01-02 22:28 hhhgzj 阅读(74) 评论(0) 推荐(0)
摘要: STL提供了两个用来计算排列组合关系的算法,分别是next_permutation和prev_permutation。首先我们必须了解什么是“下一个”排列组合,什么是“前一个”排列组合。考虑三个字符所组成的序列{a,b,c}。 这个序列有六个可能的排列组合:abc,acb,bac,bca,cab,c 阅读全文
posted @ 2020-11-25 19:39 hhhgzj 阅读(178) 评论(0) 推荐(0)
摘要: 切记,没有排序前只是去掉相邻的重复元素,如果要真正去重就要排序 现在总结一下unique,unique的作用是“去掉”容器中相邻元素的重复元素(不一定要求数组有序),它会把重复的元素添加到容器末尾(所以数组大小并没有改变),而返回值是去重之后的尾地址 由于返回的是容器末尾,所以如果想得到去重后的si 阅读全文
posted @ 2020-11-25 19:04 hhhgzj 阅读(318) 评论(0) 推荐(0)
摘要: 1.非递归: int gcd(int x,int y) { while(y) { int k=x; x=y; y=k%y; } return x; } 2.递归: int gcd(int x,int y) { return x%y==0?y:gcd(y,x%y); } GCD经典例题: 链接:htt 阅读全文
posted @ 2020-11-22 18:40 hhhgzj 阅读(281) 评论(0) 推荐(0)