Solution:
a.
If m is the smallest positive integer such that f(m)<m, the m−1 numbers preceding m must all have image smaller than f(m) and therefore cannot all be different, since at most m−2 values are available, a contradiction.
b.
If m is the smallest positive integer such that f(m)>m and is even, then f(m)=2f(2m)=22m=m, a contradiction.
If m is odd, then f(m+1)=2f(2m+1)=m+1 since 2m+1<m, because m>2, hence f(m)<m+1, a contradiction.
c.
Yes. Indeed, if m is the smallest positive integer such that f(m)<m and is even, then one proceeds as before if 2m is odd, and one passes to f(m+2)=2f(2m+2)=m+2 if 2m is even (note that 2m+2<m because m>2).
If m is odd, again one proceeds as before if 2m+1 is odd, otherwise one passes to f(m+3)=2f(2m+3)=m+3 because 2m+3<m, obviously provided that m>3. It thus remains to exclude the case m=3, that is, one must prove that f(3)=3. To this end let d be an odd number, not divisible by 3, and such that 23d+1 is odd (for example d=7 works). Then we have:
f(23d+1)<f(2d)=2f(d)f(3d+1)=2f(23d+1)>f(3d)=f(3)f(d)
from which 2>2f(3) and hence f(3)<4.
We observe that in a more direct way one can prove that f(3)=3 as follows.
Let us set f(3)=x.
By monotonicity we have f(5)≥x+2 and, by multiplicativity, f(15)≥x(x+2)=x2+2x. Using alternately multiplicativity and monotonicity we also have:
f(6)=2xf(5)≤2x−1f(10)≤4x−2f(9)≤4x−3f(18)≤8x−6
Again by monotonicity, we have f(15)+3≤f(18), from which
x2+2x+3≤8x−6x2−6x+9=(x−3)2≤0
and hence x=3.