Pagini recente » Cod sursa (job #1186711) | Cod sursa (job #2741594) | Cod sursa (job #2649026) | Cod sursa (job #2786663) | Cod sursa (job #2657476)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 100005;
long long p[NMAX];
int main () {
freopen ("progresii.in", "r", stdin);
freopen ("progresii.out", "w", stdout);
int n, m;
long long k, l;
scanf ("%d%d%lld%lld", &n, &m, &k, &l);
long long cost = 0;
for (int i = 1; i <= n; i++){
scanf ("%lld", &p[i]);
cost += 1 + (l - p[i]) / m;
}
if(cost >= k)
printf ("-1");
else{
for (int i = 1; i <= n; i++){
long long v, a = l - p[i], b;
cost -= 1 + (l - p[i]) / m;
b = k - cost - 1;
v = 1 + a / (b + 1);
printf ("%d\n", v);
cost += 1 + (l - p[i]) / v;
}
}
return 0;
}