Cod sursă (job #107202)

Utilizator avatar nita_teddy Teddy Nita nita_teddy IP ascuns
Problemă SCV (clasele 9-10) Compilator cpp | 0,74 kb
Rundă Tema 12 clasele 9-10 2014/15 Status evaluat
Dată 18 ian. 2015 09:51:46 Scor 56
#include <cstdio>

FILE*f=fopen("scv.in","r");
FILE*h=fopen("scv.out","w");

int main(){
    int x,cost,timp,mina,terminus=0,vterminus=0,minerale=0;
    fscanf(f,"%d%d%d%d",&cost,&timp,&mina,&x);
    int scv=x/mina;
    if ( scv*mina<x )++scv;
    int curent=scv;
    int prev=scv;
    for ( int i=2;i<=scv&&prev>=curent;++i ){
        int q=cost-minerale;
        if ( cost<minerale )
            q=0;
        terminus=terminus+q/(mina*(i-1))+timp;
        minerale=minerale+(terminus-vterminus)*mina*(i-1)-cost;
        vterminus=terminus;
        prev=curent;
        curent=terminus+(x-minerale)/(mina*i);
        if ( mina*i*(curent-terminus)<x-minerale )
            ++curent;
    }
    fprintf(h,"%d",prev);
    return 0;
}