记录编号 |
166297 |
评测结果 |
AAAAAAAAAA |
题目名称 |
排序工作量-加强版 |
最终得分 |
100 |
用户昵称 |
一個人的雨 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.086 s |
提交时间 |
2015-06-14 21:36:09 |
内存使用 |
1.46 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cstdlib>
using namespace std;
int c[100000],s[100000],a[100000],n;
int ans=0;
int lowbit(int x){
return (x&-x);
}
int SHIT(int x){
int sum=0;
while(x>0){
sum+=c[x];
x-=lowbit(x);
}
return sum;
}
void update(int i,int x){
while(i<=n){
c[i]+=x;
i+=lowbit(i);
}
return;
}
int main()
{
freopen("px.in","r",stdin);
freopen("px.out","w",stdout);
scanf("%d",&n);
for (int i=1;i<=n;++i)
scanf("%d",&a[i]);
for (int i=n;i>=1;--i)
{
update(a[i]+1,1);
ans+=SHIT(a[i]);
}
cout<<ans;
return 0;
}