Pagini recente » Cod sursa (job #2406003) | Cod sursa (job #1946463) | Cod sursa (job #1289270) | Cod sursa (job #2852047) | Cod sursa (job #2946481)
#include <fstream>
using namespace std;
ifstream f("numarare.in");
ofstream g("numarare.out");
int n,a[200001],x,y,i,j,l,r,b[200001];
long long s;
int main()
{
f>>n;
int oo=99999999;
a[1]=a[0]=oo;
for(int i=2;i<=2*n+1;i++)
{
f>>a[i];
a[++i]=oo;
}
int l=3,r=3;
for(int i=3;i<=2*n;i+=2)
{
a[i]=a[i-1]+a[i+1];
b[i]=max(1,min(r-i,b[l+r-i]));
while(a[i+b[i]]+a[i-b[i]]==a[i])
b[i]+=2;
if(i+b[i]>r)
r=i+b[i],l=i-b[i];
s=s+(b[i]-1)/2;
}
g<<s;
return 0;
}