include <bits/stdc++.h>
using namespace std; vector<pair<long long,long long>>s; int main() { iosbase::syncwithstdio(false); cin.tie(NULL); long long n,k,i,j,a,avr; cin >> n >> k; vector<pair<long long,long long>> s; for(i=0; i<n; i++){ cin >> a; s.push</em>back(make_pair(a,i)); } sort(s.begin(),s.end()); for(i=0; i<n; i++){ avr=k/(n-i); k-=min(s[i].first,avr); s[i].first=min(s[i].first,avr); } if(k>0){ cout << -1; return 0; } sort(s.begin(),s.end(), { return a.second < b.second; }); for(i=0; i<n; i++){ cout << s[i].first << ' '; } }</p>
Bình luận
include <bits/stdc++.h>
using namespace std; vector<pair<long long>>s; int main() { iosbase::syncwithstdio(false); cin.tie(NULL); long long n,k,i,j,a,avr; cin >> n >> k; vector<pair<long long>> s; for(i=0; i<n; i++){ cin >> a; s.push</long>back(make_pair(a,i)); } sort(s.begin(),s.end()); for(i=0; i<n; i++){ avr=k/(n-i); k-=min(s[i].first,avr); s[i].first=min(s[i].first,avr); } if(k>0){ cout << -1; return 0; } sort(s.begin(),s.end(), { return a.second < b.second; }); for(i=0; i<n; i++){ cout << s[i].first << ' '; } }</long>