博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ2299:Ultra-QuickSort——题解
阅读量:5933 次
发布时间:2019-06-19

本文共 965 字,大约阅读时间需要 3 分钟。

题目大意:给一串数,求其按照两两交换排序最少排几次。

求逆序对裸题,不建议用数据结构(因为需要离散化)

#include
#include
#include
#include
#include
using namespace std;typedef long long ll;ll n,a[500001],t[500001];ll ans = 0;void msort(int x,int y){ if(x==y) return; int mid = (x + y) >>1; msort(x,mid); msort(mid+1,y); int l = x, r = mid+1, j = x; while(l<=mid && r<=y) { if(a[l]<=a[r]){ t[j] = a[l]; j++;l++; } else{ t[j] = a[r]; r++;j++; ans += mid-l+1; } } while(l<=mid){ t[j] = a[l]; j++;l++; } while(r<=y){ t[j] = a[r]; r++;j++; } for(int i=x;i<=y;i++)a[i] = t[i]; return;}int main(){ while(scanf("%lld",&n)!=EOF){ if(!n)return 0; ans=0; for(int i=1;i<=n;i++){ scanf("%lld",&a[i]); } msort(1,n); printf("%lld\n",ans); } return 0;}

 

转载于:https://www.cnblogs.com/luyouqi233/p/7886831.html

你可能感兴趣的文章
ecshop常用的修改内容
查看>>
对称的二叉树
查看>>
编译器的原理
查看>>
【解决】Windows Mobile 6 Professional SDK Refresh.msi 在xp上一直卡死
查看>>
C#Winform限制Textbox只能输入数字
查看>>
There is no getter for property named 'id' in 'class java.lang.Integer'
查看>>
一步步实现windows版ijkplayer系列文章之三——Ijkplayer播放器源码分析之音视频输出——音频篇...
查看>>
[笔记].如何使用Nios II Software Tools for Eclipse导入已有工程
查看>>
hdu Wooden Sticks
查看>>
PHP任意文件上传漏洞CVE-2015-2348浅析
查看>>
java代码。。重温JPassword,JLabel,JPanel
查看>>
序列化与transient
查看>>
hdoj1241 Oil Deposits
查看>>
shell中cut命令的使用方法
查看>>
人工智能的hello.world,感觉挺爽,就像养个小孩儿一样,我要慢慢养下去!
查看>>
Java的基本数据类型与运算符
查看>>
centos django nginx uwsgi
查看>>
Java杨辉三角
查看>>
饼状图
查看>>
工程编码过滤器
查看>>