我在洛谷过了但是一本通两个点超时
用的桶排
#include<bits/stdc++.h>
using namespace std;
int n,cj,s[100000],point[100000];
int w;
void x(int top)
{
int a=top*w/100;
int k=max(1,a),ans=0;
int i=600;
while(i>=0)
{
if(point[i]!=0)
{
ans=ans+point[i];
}
if(ans>=k)
{
cout<<i<<" ";
break;
}
i--;
}
}
int main()
{
cin>>n>>w;
for(int i=1;i<=n;i++)
{
cin>>s[i];
point[s[i]]++;
x(i);
}
return 0;
}