Pagini recente » Cod sursa (job #973624) | Cod sursa (job #361419) | Cod sursa (job #2705736) | Cod sursa (job #958893) | Cod sursa (job #483032)
Cod sursa(job #483032)
#include<algorithm>
using namespace std;
#define DIM 1001
int n,pi[DIM],a[DIM];
void kmp ()
{
int i,q=0;
for(i=2;i<=n;++i)
{
while(q>0 && a[q+1]!=a[i])
q=pi[q];
if(a[q+1]==a[i])
++q;
pi[i]=q;
}
}
int main ()
{
freopen("reguli.in","r",stdin);
freopen("reguli.out","w",stdout);
int i,vf;
scanf("%d%d",&n,&a[1]);
for(i=2;i<=n;++i)
{
scanf("%d",&a[i]);
a[i-1]=a[i]-a[i-1];
}
--n;
kmp ();
vf=n-pi[n];
printf("%d\n",vf);
for(i=1;i<=vf;++i)
printf("%d\n",a[i]);
return 0;
}