#!/usr/local/bin/perl -w $n1 = $ARGV[0] || "0-23-1-45-200-54"; $n2 = $ARGV[1] || "0-23-3-20-100"; $d1++ while ( $n1 =~ /-/g ); $d2++ while ( $n2 =~ /-/g ); $dmax = $d1+$d2; print "La distancia máxima es $dmax\n"; $n1 =~ s/^0-//; $n2 =~ s/^0-//; while (1){ $n1 =~ s/(\d+)-(.*)/$2/; $nodo1 = $1; $n2 =~ s/(\d+)-(.*)/$2/; $nodo2 = $1; if ($nodo1 eq $nodo2){ $dmax-=2; if ($dmax<=0) { last; } }else{ last; } } $d = $dmax; print "La distancia final es $d\n"; __END__ Sea un árbol definido por un nodo común o raíz. Determinar la distancia entre dos nodos de la red. Nota: Los nodos vienen definidos por su ruta hasta el raíz y números de ramas. Ej: 0-23-1-45-200-54 y 0-23-3-20-100