Solución. Consideremos $f(f(f(n)))$, que puede calcularse de dos formas distintas usando la ecuación funcional del enunciado:
\begin{align*}
f[f(f(n))]&=f(n+1),& f(f[f(n)])&=f(n)+1.
\end{align*}
Por lo tanto, se tiene que $f(n+1)=f(n)+1$ para todo $n\in\mathbb{N}$. Esto nos lleva a que tiene que existir $a\in\mathbb{N}\cup\{0\}$ tal que $f(n)=n+a$ para todo $n\in\mathbb{N}$ (de hecho, tiene que ser $a=f(1)-1$). Si sustituimos esta función en la ecuación original, se tiene que $f(f(n))=f(n)+a=n+2a$, que tiene que ser igual a $n+1$ para todo $n\in\mathbb{N}$. Por lo tanto, tiene que ser $2a=2f(1)-2=1$, luego $f(1)=\frac{3}{2}$, contradiciendo que $f$ toma únicamente valores enteros.