/* Allan Teitelman April 19, 2021 */ #include int T[10001]; int busca (int v, int i) { int k = 0; while (k == 0 && i >= 0) { if (T[i] == v) k = i; i = i - 1; } return k; } int main () { int n, nmax = 10001, N1, N2, nne = 0; T[0] = 0; for (n = 1; n < nmax; n++) { N1 = busca (T[n], n - 1); if (N1 != 0) { N2 = busca (T[n], N1 - 1); if (N2 != 0) { T[n + 1] = n - N2; } else { T[n + 1] = nne; } } printf ("%d;%d\n", n, T[n]); } return 0; }