Pagini recente » Cod sursa (job #1199540) | Cod sursa (job #2334595) | Cod sursa (job #933170) | Cod sursa (job #2055891) | Cod sursa (job #1946830)
#include <cstdio>
#include <algorithm>
using namespace std;
int v[500010], phi[500010];
int main ()
{
freopen ("reguli.in", "r", stdin);
freopen ("reguli.out", "w", stdout);
int n, lst;
scanf ("%d %d", &n, &lst);
for (int i = 2; i <= n; ++i)
{
int x;
scanf ("%d", &x);
v[i - 1] = x - lst;
lst = x;
}
int k = 0;
for (int i = 2; i < n; ++i)
{
for (; k > 0 && v[k + 1] != v[i]; k = phi[k]);
if (v[k + 1] == v[i]) phi[i] = ++k;
}
k = n - 1 - phi[n - 1];
printf ("%d\n", k);
for (int i = 1; i <= k; ++i)
printf ("%d\n", v[i]);
return 0;
}