记录编号 597562 评测结果 AAAAAAAAAA
题目名称 棋局 最终得分 100
用户昵称 Gravatar黄天乐 是否通过 通过
代码语言 C++ 运行时间 0.562 s
提交时间 2024-11-29 19:25:19 内存使用 3.86 MiB
显示代码纯文本
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const int MAXN=2e5+5;
  4. int n,m;
  5. long long a[MAXN],sum[MAXN];
  6. bool check(long long mid,long long k){
  7. long long x=lower_bound(a+1,a+n+1,mid)-a;
  8. if(sum[n]-sum[x-1]-mid*(n-x+1)<=(k-1)*(m-mid))return true;
  9. else return false;
  10. }
  11. int main(){
  12. freopen("qiju.in","r",stdin);
  13. freopen("qiju.out","w",stdout);
  14. cin>>n>>m;
  15. for(int i=1;i<=n;i++)cin>>a[i];
  16. sort(a+1,a+n+1);
  17. for(int i=1;i<=n;i++)sum[i]=sum[i-1]+a[i];
  18. for(int k=1;k<=n;k++){
  19. long long l=0;
  20. long long r=m;
  21. while(l<r){
  22. long long mid=(l+r)/2;
  23. if(check(mid,k))r=mid;
  24. else l=mid+1;
  25. }
  26. cout<<l<<' ';
  27. }
  28. return 0;
  29. }