#include <bits/stdc++.h>
using namespace std;
struct pt
{
    int gt,tt;
};
pt a[100005];
int kq[100005],n;
long long m,s,tb;
void nhap()
{
    scanf("%d %lld",&n,&m);
    for(int i=1;i<=n;i++){
        scanf("%d",&a[i]);
        a[i].tt=i;
    }
}
bool ss(pt &x,pt &y)
{
    if(x.gt<y.gt) return true;
    else return false;
}
void giai()
{
        sort(a+1,a+1+n,ss);
       // for(int i=1;i<=n;i++) printf("%d ",a[i].gt);
        s=0;
        for(int i=1;i<=n;i++) s=s+a[i].gt;
        if(s<m)
        {
            printf("-1");return;
        }
        for(int i=1;i<=n;i++)
        {
            tb=m/(n+1-i);
            if(a[i].gt<tb)
            {
                kq[a[i].tt]=a[i].gt;
                m=m-a[i].gt;
            }
            else
            {
                kq[a[i].tt]=tb;
                m=m-tb;
            }
        }
        for(int i=1;i<=n;i++)
            printf("%d ",kq[i]);
}
int main()
{
    freopen("share948.inp","r",stdin);
    freopen("share948.out","w",stdout);
    nhap();
    giai();
}
* Chuyên dạy lập trình ONLINE cho học sinh THCS, THPT *.
Mọi giao lưu, trao đổi, xin liên hệ: Lê Quang Vinh - zalo: 037.803.8755.
Page:  Lớp học Code Sky
Group FB1:  Ôn thi HSG9 - THTB - TS10 chuyên tin
Group FB2:  Học Scratch - Ôn thi Tin học trẻ bảng A
Thứ Ba, 3 tháng 5, 2022
SHARE948 C++
Đăng ký:
Đăng Nhận xét (Atom)
 
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.