Pagini recente » Cod sursa (job #1099354) | Cod sursa (job #96140) | Cod sursa (job #1962059) | Cod sursa (job #1436051) | Cod sursa (job #487058)
Cod sursa(job #487058)
#include <fstream>
using namespace std;
int n, m, k, l;
int d[100002], v[100002];
int tot;
int main()
{
ifstream fin("progresii.in");
ofstream fout("progresii.out");
fin >> n >> m >> k >> l;
for (int i = 1; i <= n; ++i)
{
fin >> d[i];
tot += d[i] + 1;
v[i] = 1;
}
for (int i = n; i >= 1 && tot > k; --i)
{
int dif = tot - k;
if (d[i] - d[i] / m <= dif)
{
tot -= d[i], tot += d[i] / m;
v[i] = m;
}
else
{
v[i] = d[i] / (d[i] - dif);
if (v[i] * (d[i] - dif) != d[i])
++v[i];
break;
}
}
for (int i = 1; i <= n; ++i)
fout << v[i] << '\n';
fin.close();
fout.close();
}