Pagini recente » Cod sursa (job #1431038) | Cod sursa (job #830182) | Cod sursa (job #199511) | Cod sursa (job #646835) | Cod sursa (job #361300)
Cod sursa(job #361300)
#include<stdio.h>
int x[510000],pi[510000],i,j,n,k;
int main()
{
freopen("reguli.in","r",stdin);
freopen("reguli.out","w",stdout);
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&x[i]);
for(i=n-1;i>=1;--i) x[i]-=x[i-1];
pi[1]=0;
k=0;
for(i=2;i<n;i++) { while(k>0&&x[k+1]!=x[i]) k=pi[k];
if(x[k+1]==x[i]) ++k;
pi[i]=k;
}
n=n-1-pi[n-1];
printf("%d\n",n);
for(i=1;i<=n;i++) printf("%d\n",x[i]);
fclose(stdin);
fclose(stdout);
return 0;
}