2. 103 Use 94 bricks, each of size $4 \times 10 \times 19$, to stack into a tower 94 bricks high, where each brick can be oriented to provide a height of 4, 10, or 19. If all 94 bricks are used, how many different heights can the tower be (in inches)?
[Solution] Since
$$10 \times 5 = 19 \times 2 + 4 \times 3,$$

this means that each of the 5 bricks can provide a height of 10, totaling a height of 50 for the tower, and even if none of the 5 bricks provide a height of 10, they can still provide a height of 50 for the tower. Therefore, we can assume that among the 94 bricks, the number of bricks providing a height of 10 is no more than 4.

Suppose there are $x$ bricks each providing a height of 19, $y$ bricks each providing a height of 10 ($0 \leqslant y \leqslant 4$), and $94 - x - y$ bricks each providing a height of 4. Thus, the height of the tower is
$$4(94 - x - y) + 19x + 10y = 376 + 15x + 6y.$$
By $x + y \leqslant 94$, we get $0 \leqslant x \leqslant 94 - y$.
When $y = 0$, $x$ has 95 possible values;
When $y = 1$, $x$ has 94 possible values;
When $y = 2$, $x$ has 93 possible values;
When $y = 3$, $x$ has 92 possible values;
When $y = 4$, $x$ has 91 possible values.
Therefore, the tower can have
$$95 + 94 + 93 + 92 + 91 = 465 \text{ (different heights)}.$$

Next, we prove that these 465 heights are all different.
If the ordered pairs $\left(x_{1}, y_{1}\right)$ and $\left(x_{2}, y_{2}\right)$ give the same height for the tower, then
$$376 + 15x_{1} + 6y_{1} = 376 + 15x_{2} + 6y_{2}$$

which simplifies to
$$\begin{array}{l}
6(y_{1} - y_{2}) = 15(x_{2} - x_{1}) \\
2(y_{1} - y_{2}) = 5(x_{2} - x_{1})
\end{array}$$

This shows that $y_{1} - y_{2}$ is a multiple of 5. But $\left|y_{1} - y_{2}\right| \leqslant 4$, so $y_{1} - y_{2} = 0$, i.e., $y_{1} = y_{2}$, and thus $x_{1} = x_{2}$.

This means that different ordered pairs must correspond to different heights, so these 465 heights are all different.

In conclusion, a total of 465 different heights of towers can be built.