Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
53014 AK2022071308 木薯与身高 C++ 通过 100 109 MS 260 KB 565 2022-07-20 13:24:08

Tests(20/20):


#include<bits/stdc++.h> using namespace std; struct node{ int num; int rank; }a[10000000]; int n; int cnt,maxc=-1; int bin(int x) { int l=1,r=cnt; while(l<r) { int mid=(l+r)>>1; if(a[mid].num<=x) l=mid+1; else r=mid; } return a[l].rank; } long long ans; int main() { scanf("%d",&n); for(int i=1;i<=n;i++) { int x; scanf("%d",&x); if(x>maxc) { cnt++; a[cnt].num=x; a[cnt].rank=i; maxc=x; } else if(x<maxc) { int k=bin(x); ans+=(long long)1*(i-k); } } printf("%lld",ans); }


测评信息: