【正经题解】直播获奖
2024-02-20 16:55:23
发布于:浙江
38阅读
0回复
0点赞
其实我们只要观察一下数据范围就会发现,分数的范围非常小!(只有600)
于是就顺理成章的想到了桶排。
思路非常简单,而且不存在超时。
#include<bits/stdc++.h>
using namespace std;
int t[605];
int n,w;
int main()
{
int x;
cin>>n>>w;
for(int i=1;i<=n;i++)
{
cin>>x;
t[x]++;
int sum=0;
for(int j=600;j>=0;j--)
{
sum+=t[j];
if(sum>=max(1,i*w/100))
{
cout<<j<<' ';
break;
}
}
}
return 0;
}
全部评论 1
666
2024-07-23 来自 广东
0
有帮助,赞一个