Talvez seja o jeito como implementei, mas continuo não vendo muito sentido.
O único que precisará ser mudado é o A. Os outros que tem o backpointer em B não vão ter seus custos alterados, então não seria necessário mudar.
Forum