Cod sursa(job #18173)

Utilizator DorinOltean Dorin Dorin Data 18 februarie 2007 10:21:18
Problema Reguli Scor 70
Compilator cpp Status done
Runda preONI 2007, Runda 2, Clasele 11-12 Marime 0.74 kb
# include <stdio.h>

# define input "reguli.in"
# define output "reguli.out"

# define max 500002

long a[max],i,j,n,poz,ok,k,x,x1;

int main()
{
	freopen(input,"r",stdin);
	freopen(output,"w",stdout);

	scanf("%ld",&n);
	scanf("%ld",&x1);

	for(i = 1;i<n;++i)
	{
		scanf("%ld",&x);
		a[i] = x-x1;
		x1 = x;
	}
	for(i = 2;i<=n;++i)
	{
        if(a[i] == a[1])
        {
        		ok = 1;
          		k = i - 1;

            	for(j = 2;j<=n-k-1;++j)	if(a[j] != a[j+k]) {ok = 0;break;}
             	if(ok)
              	{
               		printf("%ld\n",k);
                 	for(i = 1;i<=k;++i)
                    	printf("%ld\n",a[i]);
                    break;
                }
         }
	}

	return 0;
}