当前位置: 首页 > news >正文

想要做一个网站 该怎么做企业管理培训免费课程

想要做一个网站 该怎么做,企业管理培训免费课程,维迪wordpress,com域名购买题目描述 给定一个长度为 n的整数数列&#xff0c;请你计算数列中的逆序对的数量。 逆序对的定义如下&#xff1a;对于数列的第 i个和第 j个元素&#xff0c;如果满足 i<j 且 a[i]>a[j]&#xff0c;则其为一个逆序对&#xff1b;否则不是。 输入格式 第一行包含整数 n…

题目描述

给定一个长度为 n的整数数列,请你计算数列中的逆序对的数量。

逆序对的定义如下:对于数列的第 i个和第 j个元素,如果满足 i<j 且 a[i]>a[j],则其为一个逆序对;否则不是。

输入格式
第一行包含整数 n,表示数列的长度。

第二行包含 n个整数,表示整个数列。

输出格式
输出一个整数,表示逆序对的个数。

数据范围 1≤n≤100000,
数列中的元素的取值范围 [1,109]。

输入样例:
6
2 3 4 5 6 1
输出样例:
5

求解

使用归并排序的方法,先分开,在合并的时候判断逆序对数
如要合并下面两个排好序的序列时
在这里插入图片描述
left指向1,right指向2,两者比较,若left指向的数字大于right,则逆序对数= mid - left +1 (因为若left指向的数大于right指向的数,则left之后的数字都大于left指向的数字)

代码

#include<iostream>using namespace std;typedef long long ll;int a[100001];
//int sum =0;void sorta(int a[], int start, int mid, int end, ll* sum){int left = start;int right = mid +1;int j=0;int temp[end - start +1];while(left<= mid && right <= end){//cout<<left<<right<<" "<<a[left]<<a[right]<<endl;if(a[left]>a[right]){//cout<<"sum: "<<*sum<<endl;(*sum)+= mid - left + 1 ;//cout<<mid<<left<<end<<endl;//cout<<"单个排序中:"<<*sum<<endl;temp[j] = a[right];right++;}else{temp[j] = a[left];left++;}j++;}while(left <= mid){temp[j] = a[left];j++;left++;}while(right<= end){temp[j] = a[right];j++;right++;}for(j = 0 ; j< end- start +1 ; j++){a[start + j] = temp[j];}return;}ll merge(int a[], int start, int end){if(start>=end){return 0;}int mid = (start + end)>>1;ll sum =0 ;sum += merge(a, start, mid);sum += merge(a, mid+1, end);//cout<<"排序前"<<start<<" "<<end<<endl;sorta(a,start,mid, end, &sum);//cout<<sum<<endl;return sum;}ll mergesort(int a[], int n){//int sum =0;ll sum = merge(a, 0, n-1);return sum;
}int main(){int n;cin>>n;int i;for(i=0;i <n; i++){cin>>a[i];}ll sum = mergesort(a, n);cout<<sum<<endl;return 0;}
http://www.hkea.cn/news/409141/

相关文章:

  • 阜蒙县建设学校网站是什么北京seo编辑
  • 珠海建设局网站十大经典事件营销案例分析
  • 创建网站开发公司互联网推广引流是做什么的
  • 万盛集团网站建设seo网站推广全程实例
  • 做教育的网站需要资质吗网站怎么开发
  • 微网站怎么做滚动中国万网域名注册官网
  • 个人如何免费建网站seo在线优化工具 si
  • 双线主机可以做彩票网站吗网络推广合作协议
  • 做外贸的b2b网站域名批量查询系统
  • 建设网站需要哪些职位网站建设策划书
  • 苏州网站建设哪里好网站点击排名优化
  • 网站建设收费标准策划百度推广关键词越多越好吗
  • 网站怎么做更新吗如何建立网页
  • 国外建设工程招聘信息网站tool站长工具
  • 专业做相册书的网站电商网站建设制作
  • 银川网站开发公司电话东莞网
  • 环境保护局网站管理制度建设百度指数的主要功能有
  • 安装wordpress提示500错误关键词优化的策略有哪些
  • 企业网站建设公司排名深圳高端seo公司助力企业
  • 做网站套餐网站seo
  • 网站上的代码网页怎么做的下载百度软件
  • 网站功能模块建设搜狗推广
  • 网站做推广有用吗网站页面设计
  • 做简报的网站广州搜发网络科技有限公司
  • 南乐县住房和城乡建设局网站制作网站的步骤是什么
  • 金华做网站最专业的公司搜易网提供的技术服务
  • wordpress适合门户网站吗怎么营销自己的产品
  • 常用的网站类型有哪些seo优化专员编辑
  • 网站专题框架怎么做海阳seo排名
  • 手机网站代码下载黄页网站推广服务