写在前面
在某谷上刷水时遇到的 直接打了大暴力 但是只有70
看题解说要用归并排序 sort会T只有60
然而我的sort有70 没有T WA了3个点也不知道是为什么 但好像都是大数据没有过
然而之前学归并的时候并没有很认真 好像就只记得逆序对了
所以好学的 我还是来复习一下
归并排序原理
【以下十分简略+毒瘤 仅供参考】
归并排序的本质就是分治 分而治之的思想
网上看到一个图 非常言简意赅的说明了归并的中心思想
就是将一个数组分成很多很多份,再按照顺序依次排回去
具体实现
我们先以这个非常经典的题目为例子
我是用的递归的写法
#include<cstdio>
int s[100005],t[100005],n;
long long tot;
void merge(int left,int mid,int right)
{//t[]是辅助数组,s的下标保留不变