What is the largest value of d, such that for some degree d polynomial f(x) with integer coefficients, |f(x)|=1024 for more than d integer values of x?

If we let

f(x) = (k1 x-r1)(k2 x-r2)...(kn x-rn)
then (r1/k1)(r2/k2)...(rn/kn) = 1024/1

Now, 1024 = 2^10, so all the k's are 1, and all the r's multiplied together are 2^10

the possible distinct roots are
2,4,8,16
so, f(x) = (x-2)(x-4)(x-8)(x-16) + 1024
has 4 values of x such that f(x) = 1024.

I'd say 3 is the max d such that there are n>d places where f(x) = 1024

If I'm way off base here, let me know. I'd be interested in how it's supposed to be done. What are you studying in the class now?