Informatică, întrebare adresată de iustinadragomir2009, 8 ani în urmă

Ghiță a primit de ziua lui o plantă exotică, ce se comportă foarte ciudat. El a măsurat-o când a primit-o și a constatat că are D cm, apoi a văzut că se dezvoltă într-un ritm special:
În prima zi, planta crește cu A cm
În a doua zi, descrește cu B cm
În a treia zi, iar crește cu A cm
În a patra zi, descrește din nou cu B cm
etc.
Pe scurt, în zilele cu număr de ordine impar crește cu A cm, iar în cele cu număr de ordine par, descrește cu B cm.
Cerința
Știind D, înalțimea inițiala a plantei și valorile A și B cu care aceasta crește, respectiv descrește, să se afla ce înălțime va avea planta lui Ghiță la finalul celei de-a N -a zile.
Date de intrare
Pe prima linie a fișierului planta.in se vor afla patru numere naturale D A B N în aceasta ordine, separate prin câte un spațiu, cu semnificațiile din enunț.
Date de ieșire
Pe prima linie a fișierului planta.out se va afla un număr H, semnificând înălțimea finală a plantei în cm la finalul celei de-a N -a zile.
Restricții și precizări
0 ≤ D ≤ 100
1 ≤ B ≤ A ≤ 1 000 000
1 ≤ N ≤ 1 000 000 000
Pentru 50% dintre teste, 1 ≤ N ≤ 1 000 000
Se garantează că pentru toate testele valorile se încadrează în tipul int.
Exemplul 1:
planta.in
4 5 2 3
planta.out
12

Răspunsuri la întrebare

Răspuns de bsorin578
1

#include <fstream>

using namespace std;

ifstream fin("planta.in");

ofstream fout("planta.out);

int main()

{

unsigned long long int n,d,a,b;

fin >> d >> a >> b >> n;

d += (n/2)*(a-b);

if(n%2)

d+=a;

fout << d;

}


iustinadragomir2009: as vrea sa se rezolve in c++
Alte întrebări interesante