题解
2025-12-24 20:03:15
发布于:北京
6阅读
0回复
0点赞
维护了一个有序的动态数组代表进入班内的同学,二分查找优化时间。高级版:树状数组,mutiset
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n+10];
for (int i=1;i<=n;i++) cin>>a[i];
vector<int> cla;
int ans=0;
for (int i=1;i<=n;i++)
{
if (!cla.empty())
{
sort(cla.begin(),cla.end());
int pos=lower_bound(cla.begin(),cla.end(),a[i])-cla.begin();
ans+=pos;
}
cla.push_back(a[i]);
}
cout<<ans;
}
这里空空如也







有帮助,赞一个