摘要:
RMQ 又叫 st表 跳表 本质是倍增动态规划 查询的时候,每次查询使用一个最大的k,使得2^k<=len(r-l+1) 然后找到[l, r]区间中前2^k和后2^k中的最大值,取最大 模板: const int N=200010; const int M=18;//2^M>200010 int n 阅读全文
摘要:
利用归并排序统计逆序对的数量 int n; int nums[500010]; int backup[500010]; LL MergeSort(int l,int r) { if(l==r) return 0; int mid=(l+r)/2; LL res=MergeSort(l,mid)+Me 阅读全文
摘要:
由于fill只能初始化一维数组,故输入的时候需要将高维下标列出: 例如: LL maxdp[15][15][25][2000]; LL mindp[15][15][25][2000]; fill(maxdp[0][0][0], maxdp[0][0][0] + sizeof(maxdp) / 8, 阅读全文