  Let $g(x)$ be a fixed non-constant complex polynomial. It was conjectured by
Schinzel that if $g(h(x))$ has boundedly many terms, then $h(x)\in \C[x]$ must
also have boundedly many terms. Solving an older conjecture raised by R\'enyi
and by Erd\"os, Schinzel had proved this in the special cases $g(x)=x^d$;
however that method does not extend to the general case. Here we prove the full
Schinzel's conjecture (actually in sharper form) by a completely different
method. Simultaneously we establish an "algorithmic" parametric description of
the general decomposition $f(x)=g(h(x))$, where $f$ is a polynomial with a
given number of terms and $g,h$ are arbitrary polynomials. As a corollary, this
implies for instance that a polynomial with $l$ terms and given coefficients is
non-trivially decomposable if and only if the degree-vector lies in the union
of certain finitely many subgroups of $\Z^l$.
