The "monitoring the state of the network" thing is then a huge security risk AND a massive drain. This means that every single one of the (potentially tens or hundreds of thousands) have to reach out every single one of the (potentially several hundred) masternodes. This is a massive traffic burden, but it also means that a bad actor can setup (or compromise) just a single masternode in order to identify the IP address of every single node.
I don't have deep enough understanding so I'm just throwing ideas around here. But there must be a way to distribute the count of the running nodes in trustless manner (similar to how the blockchain is distributed) without every wallet having to go and ping every masternode. This would obviously mean that the implementation wouldn't be so straightforward anymore.

And, the count is needed only before doing the denomination, which could be once a day, or once a week for most users.