Let the first odometer reading--the one we're trying to determine--be written xyabba. This reflects the assumption that the last four digits are palindromic, but that y does not equal a (which it would do if the last five digits were palindromic). As we add miles there may be carry digits, so let's first play it simple and assume a is 7 or less. Then, after one mile, the odometer reading will be xyabb(a+1), whose last five digits are palindromic. This tells us y=a+1 and b=a; so our old reading must have been
x(a+1)aaaa. Now a+1 is not 9, so the odometer reading after two miles must be x(a+1)aaa(a+2). But now the middle four digits are palindromic, giving us the contradictory news that a+1=a. So our assumption that a is anything but 8 or 9 must have been a wrong one.

So let's take up the case where a=8. Then, as above, since a is not 9, we infer that the original reading was x98888. As we add miles one-by-one up to 2, we get the right palindromes; and when the third mile is added, we get the reading x98891. Since this is a palindrome, we now have x=1, and 198,888 on the odometer at the outset.

The only issue now is to determine that there are no other solutions lurking about; i.e., that a can't be 9. Indeed, suppose it were, so that the original reading looked like xy9bb9. Here's where we have to be careful about carry digits. If b were 9 as well, then--because the last 5 digits are not palindromic-- we know that y is not 9. Hence one more mile gives the reading x(y+1)0000. But the last five digits now form a palindrome, making y+1=0, an impossibility. So the only way for a to be 9 is for b to be no more than 8. Thus when we add one mile, the reading is xy9b(b+1)0, making y=0 and b=8. This makes the original reading x09889. But then, when we add the second mile, the reading is x09891, with the middle four digits not forming a palindrome. This last contradiction tells us there are no solutions other than 198,888.