Pagini recente » Cod sursa (job #683143) | Cod sursa (job #929425) | Cod sursa (job #393848) | Cod sursa (job #2431350) | Cod sursa (job #1401702)
#include <cstdio>
#define NMAX 500005
using namespace std;
long long n,k,prec,precc;
long long phi[NMAX],v[NMAX];
int main()
{
freopen("reguli.in","r",stdin);
freopen("reguli.out","w",stdout);
scanf("%d %d",&n,&prec);n--;
for (int i=1;i<=n;i++)
{
scanf("%d",&v[i]);
precc=v[i];
v[i]-=prec;
prec=precc;
}
//for (int i=1;i<=n;i++)
// printf("%d ",v[i]);
for (int i=2;i<=n;i++)
{
while (k && v[k+1]!=v[i])
k=phi[k];
if (v[k+1]==v[i])k++;
phi[i]=k;
}
printf("%d\n",n-phi[n]);
for (int i=1;i<=n-phi[n];i++)
printf("%d\n",v[i]);
fclose(stdin);
fclose(stdout);
}