Solution:
Assume that we have a polynomial P that satisfies the desired conditions. We begin by examining some easy cases:
If P is a constant polynomial, that is, P(z)=c for some c∈R, the condition becomes cz=1 if and only if c2=0. If c=0, then c2=0 is always satisfied while cz=1 cannot hold, contradiction. If however c=0, we can plug in z=c1 to obtain a contradiction. Therefore, there are no solutions among constant polynomials.
What about polynomials of the form P(z)=mz+b where m=0? The condition becomes mz2+bz=1 if and only if (m(z−1)+b)(m(z+1)+b)=0, so the two quadratic polynomials mz2+bz−1 and m2z2+2bmz+(b2−m2) have the same roots, and this means that they are multiples of each other. By comparing the leading coefficients we see that the multiplying factor is m, and by comparing the other coefficients we get that bm=2bm and −m=b2−m2. Since m=0, the first of these two equations gives us b=0 and the second m=1. This shows that the only linear polynomial that can satisfy these conditions is P(z)=z, which is obviously a solution.
Let's now assume that deg(P)=n≥2.
Consider the polynomial Q(z)=(z+1)P(z+1)−(z−1)P(z−1). It's easy to see that deg(Q)≤deg(P) (since the highest degree terms of (z+1)P(z+1) and (z−1)P(z−1) cancel out). We show that Q also has the same roots as P:
If P(r)=0 for some complex number r, by plugging in z=r±1 in the condition of the problem, we see that (r−1)P(r−1)=1=(r+1)P(r+1) and therefore Q(r)=0. This shows that all roots of P are also roots of Q. Since P has no repeated roots and the degree of Q is not greater than the degree of P, we deduce that Q is just a multiple of P.
Let P(z)=∑k=0nakzk. This gives us
Q(z)=k=0∑nak((z+1)k+1−(z−1)k+1)
In order to compare Q to P, we would like to write it in the form Q(z)=∑k=0nbkzk. To compute bn, note that the only terms in (⋆) that contain zn come from k=n−1 and k=n. We get
bnzn=an−1(zn−zn)+an((n+1)zn−(−(n+1)zn))=2(n+1)anzn
so we must have Q=2(n+1)P. Now we compute bn−1. Similarly to above, we see that the only relevant terms in (⋆) come from k=n−2,k=n−1 or k=n. We get
bn−1zn−1=an−2(zn−1−zn−1)+an−1(nzn−1−(−n)zn−1)+an((2n+1)zn−1−(2n+1)zn−1)=2nan−1zn−1
But if Q=2(n+1)P, we must have bn−1=2(n+1)an−1, contradiction! This shows that there cannot be any polynomial of degree ≥2 satisfying the desired conditions.
We give a different argument for the case n≥2:
Note that the problem statement is equivalent to the statement that the two polynomials zP(z)−1 and P(z−1)P(z+1) have the same set of roots. However, the polynomial zP(z)−1 has degree n+1 and thus at most n+1 different roots. On the other hand, for each of the distinct roots r1,r2,…,rn of P, the numbers r1+1,…,rn+1 are roots of P(z−1) and the numbers r1−1,…,rn−1 are roots of P(z+1). Write rk=xk+yki. For any fixed y we note the following:
If there are m roots of P with imaginary part y, then there are at least m+1 distinct numbers among {r1−1,…,rn−1,r1+1,…,rn+1} with imaginary part y. This is because if WLOG r1,…rm all have imaginary part y and real parts x1<…<xm (the strict inequality holds because we cannot have repeated roots), then the m+1 numbers r1−1,r1+1,…,rm+1 all have different real part and so they must be different.
Since we cannot have more than n+1 roots, we conclude that y1=…=yn. In fact, they are all equal to zero because we know that if xk+yki is a root of a polynomial with real coefficients, then so is xk−yki. But since all yk are equal, we must have yk=−yk.
Since y1=…=yn, the xk=rk are pairwise distinct and we can order them x1<⋯<xn. Analogously to above, we have x1−1<x1+1<⋯<xn+1, so those have to be our n+1 roots. Clearly, xk−1 is the k-th smallest root, and by comparing to our chain of inequalities above, we must have xk−1=xk−1+1, or xk=xk−1+2.
All in all, we learned that all the roots of P(z) are real and form an arithmetic progression of difference 2. We can therefore write:
P(z)=c⋅(z−a+2)⋅(z−a+4)⋅…⋅(z−a+2n)
for some constants a,c∈R where c=0. Hence, we can also write:
zP(z)−1=c⋅z⋅(z−a+2)⋅…⋅(z−a+2n)−1
The conditions in the problem statement now imply that the roots of the polynomial zP(z)−1 are {a−1,a−3,…,a−(2n+1)}. Plugging in z=a−1 into the equation above, we get
1=c⋅(a−1)⋅1⋅3⋅…⋅(2n−1)
On the other hand, plugging in z=a−(2n+1) gives
1=c⋅(a−(2n+1))⋅(−(2n−1))⋅…⋅(−3)⋅(−1)
By taking absolute values of (⋆) and (⋆⋆) and using c=0, we see that ∣a−1∣=∣a−(2n+1)∣, so a=n+1, which allows us to find c>0 using (⋆). But now we can plug z=a−3=n−2 into the equation for zP(z)−1 above to obtain
1=c⋅(n−2)⋅(−1)⋅1⋅…⋅(2n−3)
Since n≥2, each factor on the RHS except for the −1 is non-negative, which means that this equation cannot hold! We conclude that there is no such P for n≥2.
Therefore, the only solution is P(z)=z.