Considera la cantidad de formas en que podemos tener un $0$ en el lugar de las unidades. Podemos tener $10, 20, 30\cdots 999990$. Estos son simplemente los números naturales $1, 2\cdots99999$ con un cero al final.
Sin embargo, también podemos poner un cero en el lugar de las decenas. Esto puede tomar la forma de $100, 101\cdots999909$. Estos son los números naturales $10,11\cdots99999$ con un cero inyectado antes del lugar de las unidades.
De manera similar, podemos contar los ceros en los otros lugares considerando los números naturales en los que pueden ser inyectados. Cada posición más a la izquierda para el cero requerirá multiplicar el número inicial por diez para dar un dígito distinto de cero a la izquierda.
Los ceros requeridos para escribir del uno al millón son $99999 + (99999 - 9) + (99999 - 99) + (99999 - 999) + (99999 - 9999) = 488889$.
EDITAR: Si te refieres al uno hasta un millón incluyendo el millón, tienes que sumar seis para obtener $488895$. ¡Supongo que también estaba pensando como un programador con el límite superior exclusivo!