随笔分类 - 蓝桥杯
刚学完数据结构,为准备蓝桥杯记下的笔记,参考视频为闫学灿的ACwing
摘要:1.利用归并排序求逆序对 注意:此种方法利用了归并排序每次归并后的有序性,需要归并的两组数据(p1遍历区间[start,mid]、p2遍历区间[mid + 1, end])在先前的归并中已经变得有序,因此这两组数据在归并时,只需要看右边nums[p2]是否小左边nums[p1],若小于,由于两组的数
阅读全文
摘要:例:输入正整数 X,求 X 的大于 1 的因子组成的满足任意前一项都能整除后一项的严格递增序列的最大长度,以及满足最大长度的序列的个数。 输入格式 输入包含多组数据,每组数据占一行,包含一个正整数表示 X。 输出格式 对于每组数据,输出序列的最大长度以及满足最大长度的序列的个数。 每个结果占一行。
阅读全文
摘要:树状数组 数组的奇数为存放数组原来的值,偶数位数组的第x个位置表示的是(x - lowbit(x), x]这个区间内元素的和 lowbit()函数表示包括当x在内的lowbit(x)个元素的和在x的位置上已知 4层 16(16) 3层 8(8) 2层 4(4) 12(4) 1层 2(2) 6(2)
阅读全文
摘要:二分的两种格式(边界不要不要搞混) 1)若数组中存在多个相同的元素,则该方法可求出最后一次出现的位置 while(L < R){ M = (L + R + 1) / 2; if(M <= ans){ //左半个区间包括了M L = M; }else{ R = M - 1; } } 2)若数组中存在多
阅读全文
摘要:AcWing1209.带分数 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N = 10; bool used[N]; int n; i
阅读全文
摘要:在递归中可以画出一个递归树,再由递归树找出退出条件和每次递归的做法 递归实现指数型枚举 例:枚举1~n的任取m个数的各种排列,0 =< m =< n,1 =< n ⇐ 15. #include <cstdio> #include <iostream> #include <cstring> #incl
阅读全文