Pagini recente » Cod sursa (job #2763405) | Cod sursa (job #2591426) | Cod sursa (job #1721003) | Cod sursa (job #142547) | Cod sursa (job #3165246)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int v[400010], n, x;
int main()
{
fin >> n;
for (int i = 1; i <= n; i++)
{
fin >> v[i] >> x;
v[i] = (v[i] + 2 * x * v[i] - 2 * v[i]);
v[n + i] = v[i];
}
int suma =0, sumamax = 0;
int salvare, primul, salvarelungime,lungime;
for (int i = 1; i <= 2 * n; i++)
{
if (suma + v[i] >= v[i] && salvarelungime <= n-1)
{
suma += v[i];
salvarelungime++;
}
else
suma = v[i], salvare = i,salvarelungime=1;
if (suma > sumamax)
{
primul=salvare;
sumamax=suma;
lungime=salvarelungime;
}
}
fout<<sumamax<<" "<<primul<<" "<<lungime;
}