Acwing 788.逆序对的数量
#include<bits/stdc++.h> using namespace std; const int N=1e+5; int a[N],tmp[N]; typedef long long ll; #注意题目条件 ll merge_sort(int q[],int l,int r){ if(l>=r) return 0; int mid=l+r>>1; ll res=merge_sort(q,l,mid)+merge_sort(q,mid+1,r); #注意 int k=0,i=l,j=mid+1; while(i<=mid&&j<=r){ if(q[i]<=q[j]) tmp[k++]=q[i++]; else{ res+=mid-i+1; #回忆计算过程(力扣视频上有) tmp[k++]=q[j++]; } } while(i<=mid) tmp[k++]=q[i++]; while(j<=r) tmp[k++]=q[j++]; for(i=l,j=0;i<=r;i++,j++) q[i]=tmp[j]; return res; } int main(){ int n; cin>>n; for (int i = 0; i < n; i ++ ) scanf("%d", &a[i]); cout<<merge_sort(a,0,n-1)<<endl; return 0; }
本文来自博客园,作者:Nikkie-02,转载请注明原文链接:https://www.cnblogs.com/Nikkie-02/p/16830813.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)