Pagini recente » Cod sursa (job #1511653) | Cod sursa (job #2946780) | Cod sursa (job #969649) | Cod sursa (job #2158303) | Cod sursa (job #2228522)
#include <fstream>
using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");
int n, i, a, b, v[400005];
void ssm ()
{
int i, i1, i2, cnt = 0;
long long sum, m;
sum = m = v[1];
for (i=2; i<2*n; i++){
if (sum < 0){
sum = v[i];
cnt = 1;
}
else{
sum += v[i];
cnt++;
}
if (sum > m){
m = sum;
i1 = i - cnt + 1;
i2 = i;
}
}
fout << m << " " << i1 << " " << i2 - i1 + 1;
}
int main()
{
fin >> n;
for (i=1; i<=n; i++){
fin >> a >> b;
if (b == 0)
v[i] = -a;
else
v[i] = a;
}
for (; i<2*n; i++){
v[i] = v[i-n];
}
ssm();
return 0;
}