Cod sursa(job #2888887)

Utilizator Bogdan197Putineanu Bogdan Bogdan197 Data 11 aprilie 2022 22:11:15
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.97 kb
#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;
}