# include<cstring>
const int maxn=500010;
int n;
long long ans;
int a[maxn];
int t[maxn];
struct node
{
int val;
int pos;
}p[maxn];
bool cmp(const node&a, const node& b){
return a.val<b.val;
}
int lowbit(int x){
return x&(-x);
}
void add(int x){
while(x<=n){
t[x]+=1;
x+=lowbit(x);
}
}
int sum(int x){
int ret=0;
while(x>0){
ret+=t[x];
x-=lowbit(x);
}
return ret;
}
2010年,阿里雲對外開放其在雲端計算領域的技術服務能力。使用者通過阿里雲,用網際網路的方式即可遠端獲取海量計算、儲存資源和巨量資料處理能力。截至2014年6月,阿里雲服務的客戶數超過140萬,遍佈網際網路、移動APP、音視訊、遊戲、電商等各個領域。根據IDC調研報告,阿里雲是國內最大的公共雲端計算服務提供商。
「雲」計算(Cloud Computing)是一種能夠通過網路隨時隨地獲取高可用計算資源的計算模式。雲端計算的服務商通過對軟硬體資源的虛擬化,將基礎資源變成了可以自由排程的「池子」,從而實現資源的按需配給,並做到向客戶提供按使用付費的服務;客戶可以根據業務的需要動態調整所需的資源,而云服務商也可以提高自己的資源使用效率,降低服務成本,通過多種不同型別的服務方式為使用者提供計算、儲存和資料業務的支援。
阿里雲建站: https://ac.aliyun.com/application/webdesign/sumei?userCode=sl9cqtpd
阿里雲的建站更是實現了從選擇域名,到伺服器部署一條龍服務,特別是大家都知曉的阿里雲 雲.速成美站,不僅價格優惠,模板十分豐富,不管是個人建站還是企業建站都非常適合。具體詳情可參考下面內容。
for(int i=1; i<=n; i++)
{
scanf("%d",&p[i].val);
p[i].pos=i;
}
sort(p+1,p+n+1,cmp); //排序 將要求求逆序數的陣列排序,排序之後他們的下標將混亂,這時求下標得逆序數,即為原陣列的逆序數。
for(int i=1; i<=n; i++)
{
a[i]=p[i].pos;
}
ans=0;
for(int i=1;i<=n;i++){
add(a[i]);
ans+=i-sum(a[i]);
}
printf("%lld\n",ans);