Cod sursă (job #765726)

Utilizator avatar axenie abchihba axenie IP ascuns
Problemă SCV (clasele 9-10) Compilator cpp-32 | 1,06 kb
Rundă Arhiva de probleme Status evaluat
Dată 1 mar. 2024 12:07:53 Scor 90
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

int main()
{
    freopen("scv.in", "r", stdin);
    freopen("scv.out", "w", stdout);
    int C, T, M, X, ans = 0, curr = 0, cnt = 1;
    cin >> C >> T >> M >> X;
    while(curr < X) {
        if(curr >= C) {
            int rem = X-curr;
            int curr_earnings = cnt*M;
            int days = (rem/curr_earnings);
            days += bool(rem%curr_earnings);
            int rem1 = X-curr+C;
            int days1 = T;
            rem1 -= (curr_earnings*T);
            int curr_earnings1 = ((cnt+1) * M);
            days1 += (rem1 / curr_earnings1);
            days1 += bool(rem1%curr_earnings1);
            if(days1 < days) {
                ans += T;
                curr += curr_earnings*T;
                curr -= C;
                cnt++;
            }
            else {
                ans += days;
                break;
            }
        }
        else {
            ++ans;
            curr += (cnt * M);
        }
    }
    cout << ans;
    return 0;
}