Pagini recente » Cod sursa (job #2385373) | Cod sursa (job #1642210) | Cod sursa (job #212159) | Cod sursa (job #2726017) | Cod sursa (job #246118)
Cod sursa(job #246118)
#include<stdio.h>
#define dim 500001
long long int n,i,k,a[dim],b[dim];
void fill()
{int x,y;
scanf("%d",&y);
for(i=1;i<n;i++)
{
scanf("%d",&x);
a[i]=x-y;
y=x;
}}
int check(int y)
{int x,p;
x=1;
for(p=y;p<n;++p,++x)
{
if(x==k+1)
x=1;
if(a[p]!=b[x])
return 1;
}
return 0;
}
void afis(int i)
{
printf("%d\n",i);
for(k=1;k<=i;k++)
printf("%d\n",a[k]);
}
int solve()
{
k=1;
for(i=2;i<=n;i++)
{
if(b[1]==a[i])
{//printf("%d %d %d %d\n",i,n,b[1],a[i]);
if(check(i)==0)
{afis(k);
return 0;
}
}
b[++k]=a[i];
}
afis(n-1);
}
int main ()
{
freopen("reguli.in","r",stdin);
freopen("reguli.out","w",stdout);
scanf("%d",&n);
fill();
b[1]=a[1];
solve();
// afis(n);
}