Cod sursă (job #107289)

Utilizator avatar BonCip Bonciocat Ciprian Mircea BonCip IP ascuns
Problemă SCV (clasele 9-10) Compilator cpp | 0,79 kb
Rundă Tema 12 clasele 9-10 2014/15 Status evaluat
Dată 18 ian. 2015 14:02:54 Scor 100
#include <stdio.h>

int main()
{
	FILE *fin, *fout;
    fin = fopen("scv.in", "r");
    fout = fopen ("scv.out","w");
    
	long long C, T, M, X;
	fscanf(fin, "%lld%lld%lld%lld", &C, &T, &M, &X);
    
    long long min = (X - 1) / M + 1, R = X / C + 1, day = 1, m = M;

	int i;
    for (i = 1; i <= R; i++) {
        if (m >= C){
            day += T;
            m += M * i * T - C;
        } else {
            day += (C - m - 1) / (M * i) + T + 1;
            m = m + ((C - m - 1) / (M * i) + 1) * (M * i) - C + M * i * T;
        }

		long long z;
        if (m >= X){
            z = day;
            i = R;
        } else {
			z = day + (X - m - 1) / (M * (i + 1)) + 1;
		}
        if (z < min) {
			min=z;
		}
    }

    fprintf(fout, "%lld", min);
    return 0;
}