Pagini recente » Cod sursa (job #1587508) | Cod sursa (job #145283) | Cod sursa (job #396881) | Cod sursa (job #275986) | Cod sursa (job #2888887)
#include <fstream>
#include <vector>
using namespace std;
int min(int a, int b)
{
if (a > b)
return a;
return b;
}
int main()
{
ifstream f("branza.in");
ofstream g("branza.out");
int nr_saptamani, pret_depozit, timp_expirare;
f >> nr_saptamani >> pret_depozit >> timp_expirare;
vector<int> pret;
vector<int> cantitate;
int x, y;
for (int i = 0; i < nr_saptamani; i++)
{
f >> x >> y;
pret.push_back(x);
cantitate.push_back(y);
}
int pret_total = 0;
int saptamana = 0;
int count = 0;
while (saptamana != nr_saptamani)
{
for (int perioada = saptamana; perioada < min(saptamana + timp_expirare, nr_saptamani); perioada++)
{
if(pret[saptamana] + pret_depozit * (perioada - saptamana) <= pret[perioada])
{
pret_total += pret[saptamana] * cantitate[perioada] + pret_depozit * cantitate[perioada] * (perioada - saptamana);
count++;
}
else break;
}
saptamana += count;
count = 0;
}
g << pret_total;
}