BUG: Use total_tie_count to normalize dense ranking
- [x] closes #18296
- [ ] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

As reported in #18296, for a `Series` with repeated values, `Series.rank(pct=True, method='dense').max()` may not be `<=1` as expected.

This is due to the division of the ranks by the total number of elements in the `Series`, instead of the maximum rank assigned. Here we update the calculation.