Solution:
The answer is (E). To prove it, we want to show that p(m) is even for every integer m, and that consequently p(m) is a multiple of 6 if and only if it is a multiple of 3. At this point we can use the hypothesis that the integers m for which p(m) is a multiple of 3 are precisely 40 to obtain the answer.
Let us first observe that the parity of p(m) depends only on the parity of m: indeed the parity of a monomial a⋅mk depends only on the parities of m and of a, and the parity of the value of p(m), which is a sum of monomials in m, depends only on the parity of each addend. It is therefore sufficient to show that p(m) is even for at least one even value and for at least one odd value of m. By hypothesis p(0)=6, so it remains to show the existence of an odd value of m for which p(m) is even. We can write p(x)=x⋅q(x)+6, where q(x) is a polynomial with integer coefficients. If m is a multiple of 4, say m=4k, then p(m)=4k⋅q(4k)+6 is not a multiple of 4 (it gives remainder 2 upon division by 4). By hypothesis, there are 30 integers between 1 and 60 such that p(m) is a multiple of 4; since the m that are multiples of 4 do not have this property, and the m that are even but not multiples of 4 are only 15, there must exist odd integers such that p(m) is even.