how para determinar el costo máximo de ruta en una pirámide numérica alta n

Tengo una pirámide numérica como esta

       7
      4 8
     1 8 9
    2 4 6 7
   4 6 7 4 9
  4 9 7 3 8 8

routes: 32

cada número indexado por cuán poderoso en su línea.

 0 ( 9 => 1 ) 1 ( 8 => 5 ) 2 ( 8 => 4 ) 3 ( 7 => 2 ) 4 ( 4 => 0 ) 5 ( 3 => 3 )
 0 ( 9 => 4 ) 1 ( 7 => 2 ) 2 ( 6 => 1 ) 3 ( 4 => 3 ) 4 ( 4 => 0 )
 0 ( 7 => 3 ) 1 ( 6 => 2 ) 2 ( 4 => 1 ) 3 ( 2 => 0 )
 0 ( 9 => 2 ) 1 ( 8 => 1 ) 2 ( 1 => 0 )
 0 ( 8 => 1 ) 1 ( 4 => 0 )
 0 ( 7 => 0 )

en esta pirámide hay 2 ^ (n-1) rutas (puede ir en 2 direcciones desde cada número) Si la pirámide está tan alta, es fácil, puede calcular todas las rutas y compararlas entre sí. Pero si tiene una pirámide de 50 de altura con 562949953421312 rutas, el problema es un poco más difícil.

reo que empiezo desde abajo comenzando por los números más poderosos, pero pronto me di cuenta de que el costo máximo de la ruta no necesariamente comienza o termina en números grandes.

Entonces pensé que tal vez los índices de segundo límite (dónde puede ir más lejos de un número) ayudarán, pero ni siquiera implementé eso porque supuse que todavía usa muchos recursos y no es óptimo.

Y ahora estoy confundido sobre cómo reiniciar el pensamiento sobre este problema ... cualquier consejo apreciado