You could probably do it using a signal. Every time a record is created or deleted, you can update the verbose_name_plural with the current count.
from django.db.models.signals import post_save, post_delete
def update_verbose_name(sender, **kwargs):
Elephant._meta.verbose_name_plural = 'elephants (%s)' % Elephant()
post_delete.connect(update_verbose_name, sender=Elephant)
post_save.connect(update_verbose_name, sender=Elephant)