Pagini recente » Cod sursa (job #1003916) | Cod sursa (job #1492813) | Cod sursa (job #174707) | Cod sursa (job #624225) | Cod sursa (job #2460444)
#include <bits/stdc++.h>
using namespace std;
const int nmax=500005;
long long v[nmax],phi[nmax];
int main()
{
ifstream cin("reguli.in");
ofstream cout("reguli.out");
long long n,prec,curr;
cin>>n>>prec;
for(int i=1;i<=n-1;i++)
{
cin>>curr;
v[i]=curr-prec;
prec=curr;
}
for(int i=2;i<=n-1;i++)
{
long long aux=i-1;
while(v[phi[aux]+1]!=v[i]&&aux>0)
aux=phi[aux];
if (v[phi[aux]+1]==v[i])
phi[i]=phi[aux]+1;
else
phi[i]=0;
}
int l=n-1-phi[n-1];
cout<<l<<"\n";
for(int i=1;i<=l;i++)
cout<<v[i]<<"\n";
return 0;
}