Pagini recente » Cod sursa (job #214922) | Cod sursa (job #1296006) | Cod sursa (job #1775461) | Cod sursa (job #1684990) | Cod sursa (job #19699)
Cod sursa(job #19699)
#include <stdio.h>
#define input "reguli.in"
#define output "reguli.out"
#define nmax 500001
long n,i,nr,pz;
long long int v[nmax],s;
void citire()
{
FILE *fin;
fin=fopen(input,"r");
fscanf(fin,"%ld",&n);
for (i=1;i<=n;i++)
fscanf(fin,"%lld",&v[i]);
fclose(fin);
}
void solve()
{
nr=1;
for (i=2;i<n;i++)
{
s=v[i+1]-v[i];
pz=i%nr;
if (pz==0) pz=nr;
if (s!=v[pz+1]-v[pz]) nr=i;
}
}
void write()
{
FILE *fout;
fout=fopen(output,"w");
fprintf(fout,"%ld\n",nr);
for (i=1;i<=nr;i++)
fprintf(fout,"%lld\n",v[i+1]-v[i]);
fclose(fout);
}
int main()
{
citire();
solve();
write();
return 0;
}