Pagini recente »
pregatire_oji_clasa_a_v-a
|
Istoria paginii runda/s21_lab/clasament
|
Clasament sim_info2
|
Borderou de evaluare (job #156912)
|
Cod sursă (job #470709)
Cod sursă (job
#470709)
#include <bits/stdc++.h>
#define cin fin
#define cout fout
using namespace std;
ifstream fin("scv.in");
ofstream fout("scv.out");
int main() {
long long mmc, tot, mase, ics;
cin >> mmc >> tot >> mase >> ics;
long long min = (ics - 1) / mase + 1, R = ics / mmc + 1, day = 1, m = mase;
int i;
for (i = 1; i <= R; i++) {
if (m >= mmc) {
day += tot;
m += mase * i * tot - mmc;
} else {
day += (mmc - m - 1) / (mase * i) + tot + 1;
m = m + ((mmc - m - 1) / (mase * i) + 1) * (mase * i) - mmc +
mase * i * tot;
}
long long z;
if (m >= ics) {
z = day;
i = R;
} else {
z = day + (ics - m - 1) / (mase * (i + 1)) + 1;
}
if (z < min) {
min = z;
}
}
cout << min;
return 0;
}