Pagini recente » Cod sursa (job #570376) | Cod sursa (job #2698397) | Cod sursa (job #723458) | Cod sursa (job #214893) | Cod sursa (job #2106400)
#include <cstdio>
const int MAXN = 1e5;
long long v[MAXN];
int main() {
int n, m;
long long k, l, ts, rcr;
FILE *f = fopen("progresii.in", "r");
fscanf(f, "%d%d%lld%lld", &n, &m, &k, &l);
ts = 0LL;
for (int i = 0; i < n; ++i) {
fscanf(f, "%lld", &v[i]);
v[i] = l - v[i];
ts += v[i] / m;
}
fclose(f);
f = fopen("progresii.out", "w");
k -= n;
if (ts > k) {
fprintf(f, "-1\n");
} else {
for (int i = 0; i < n; ++i) {
ts -= v[i] / m;
if (k - ts >= v[i]) {
rcr = 1;
} else {
rcr = v[i] / (k - ts + 1) + 1;
}
k -= v[i] / rcr;
fprintf(f, "%lld\n", rcr);
}
}
fclose(f);
return 0;
}