f(p) supérieur ou égale a 0 pour tout p
f(f(f(0))) + f(f(0)) + f(0) = 0
or chaque terme est positif donc ils sont tous nuls
donc f(0)=0
et donc pour tout p on a f(p) différent de 0 car sinon 0+0+0=3*p
f(1)+f(f(1))+f(f(f(1)))=3 avec donc chaque terme supérieur ou égale à 1 donc ils sont tous égaux à 1 et f(1)=1
de plus f injective car f(p)=f(n) => 3p=3n
et surjective car pour tout n il existe k tel que f(k)=n
et on a 3*k=n+f(n)+f(f(n))
par récurence (initialisée en haut pour n=1) on pose f(n)=n
on a alors f(n+1) supérieur ou égale à n+1 et donc f(f(n+1)) et f(f(f(n+1))) aussi
et donc (leur somme fait 3n+3) ils sont tous égaux à n+1
récurence achevée
f(n)=n