Cod sursa(job #1809555)

Utilizator catalina200029Olteanu Catalina catalina200029 Data 19 noiembrie 2016 00:44:29
Problema Reguli Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;

ifstream f("reguli.in");
ofstream g("reguli.out");

int v[500001],i,n,a,dif,b,j,mx,k,urm[500001];

int main()
{
f>>n>>a;
for (i=0;i<n-1;i++) {
    f>>b;
    v[i]=b-a;
    a=b;
}

--n;

for (i=2;i<=n;i++) {
    while (k && v[k]!=v[i-1])
        k=urm[k];
    if (v[k]==v[i-1])
        k++;
    urm[i]=k;
}

for (i=0;i<n;i++)
    if (mx<urm[i])
        mx=urm[i];

g<<mx<<'\n';
for (i=0;i<mx;i++)
    g<<v[i]<<'\n';
    return 0;
}