题目描述

破解了符文之语,小FF开启了通往地下的道路。当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案。而石门上方用古代文写着“神的殿堂”。小FF猜想里面应该就有王室的遗产了。但现在的问题是如何打开这扇门……

仔细研究后,他发现门上的图案大概是说:古代人认为只有智者才是最容易接近神明的。而最聪明的人往往通过一种仪式选拔出来。仪式大概是指,即将隐退的智者为他的候选人写下一串无序的数字,并让他们进行一种操作,即交换序列中相邻的两个元素。而用最少的交换次数使原序列变成不下降序列的人即是下一任智者。

小FF发现门上同样有着n个数字。于是他认为打开这扇门的秘诀就是找到让这个序列变成不下降序列所需要的最小次数。但小FF不会……只好又找到了你,并答应事成之后与你三七分……

输入输出格式

输入格式:

第一行为一个整数n,表示序列长度

第二行为n个整数,表示序列中每个元素。

输出格式:

一个整数ans,即最少操作次数。

输入输出样例

输入样例#1:

4
2 8 0 3
输出样例#1:

3
样例说明:开始序列为2 8 0 3,目标序列为0 2 3 8,可进行三次操作的目标序列:
1.Swap (8,0):2 0 8 3
2.Swap (2,0):0 2 8 3
3.Swap (8,3):0 2 3 8

说明

对于30%的数据1≤n≤10^4。

对于100%的数据1≤n≤5*10^5;

-maxlongint≤A[i]≤maxlongint。

以前只会写左闭右开区间的归并排序,今天终于写对闭区间排序辣!

 /*by SilverN*/
#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<vector>
using namespace std;
const int mxn=;
int read(){
int x=,f=;char ch=getchar();
while(ch<'' || ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>='' && ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
int t[mxn],a[mxn];
int n;
long long ans=;
void merge(int l,int r){
if(l>=r)return;
int mid=(l+r)>>;
merge(l,mid);
merge(mid+,r);
int p=l,q=mid+,i=l;
while(p<=mid || q<=r){
if(q>r || (p<=mid && a[p]<=a[q])){
t[i++]=a[p++];
}
else t[i++]=a[q++],ans+=mid-p+;
}
for(i=l;i<=r;i++)a[i]=t[i];
return;
}
int main(){
n=read();
int i,j;
for(i=;i<=n;i++)
a[i]=read();
merge(,n);
printf("%lld\n",ans);
return ;
}

最新文章

  1. 防止sql注入和sqlmap介绍
  2. 各类坐标系相互之间的转换(84互转GC02,GC02互转BD09)
  3. (一)常用的CSS命名规则
  4. 超好玩!10款神奇的字符图案 &amp; 词汇云生成工具
  5. python之时间函数
  6. 数据密集型 和 cpu密集型 event loop
  7. Lucene/Solr开发经验
  8. mysql学习(用户权限管理)
  9. SilkTest Q&amp;A 7
  10. HDU2425:Hiking Trip(BFS+优先队列)
  11. Jmeter之正则表达式提取器应用
  12. 你真的理解了for循环吗?反正我是没有
  13. .net core使用配置文件
  14. 学以致用二十四-----shell脚本中的列表及space
  15. A. Pride
  16. python cookie
  17. Ansible Playbook handlers 语句
  18. 微信小程序 GMT+0800 (中国标准时间) WXSS 文件编译错误
  19. 《次元唤醒 需求规格说明书v1.0》
  20. vue router使用query和params传参的使用

热门文章

  1. Html5 Egret游戏开发 成语大挑战(三)开始界面
  2. Angular权威指南学习笔记(转)
  3. Webwork 学习之路【04】Configuration 详解
  4. Theano2.1.8-基础知识之装载和保存
  5. iframe在ios下无故扩大的问题探究
  6. 采访ServiceStack的项目领导Demis Bellot——第1部分(网摘)
  7. Code Review 五问五答
  8. ASimpleCache使用感受
  9. 关于HTML+CSS设置图片居中的方法
  10. 17-tail 简明笔记