When I were a bit older, I programmed the computer to do the maths.
Now: for each of common, uncommon, rare, or very rare I make a chart with 3, 4, 6, 8, 10, 12, 20, or (if you're Zak) 100 entries and roll 1d100 for encounters:
1-65: re-roll on common
66-85: re-roll on uncommon
86-96: re-roll on rare
97-00: re-roll on very rare
Much simpler, although it does require two rolls instead of one. I suspect most people who read this will laugh at the idea that it took me 30 years to come up with this.