记录编号 166297 评测结果 AAAAAAAAAA
题目名称 排序工作量-加强版 最终得分 100
用户昵称 Gravatar一個人的雨 是否通过 通过
代码语言 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;
}