Introducción
Quiero construir una escalera. Para esto, he eliminado del depósito de chatarra dos tablas largas con agujeros en ellas, y quiero colocar los escalones en estos agujeros. Sin embargo, los agujeros no están colocados de manera uniforme, por lo que los pasos serán un poco torpes, y me resulta difícil estimar la cantidad de varilla que necesito para ellos. Tu trabajo es hacer los cálculos por mí.
Entrada
Su entrada son vectores de dos bits, dados como matrices de enteros, que representan las dos tablas. A 0representa un segmento de un aud ( unidad arbitraria de distancia ) sin un agujero, y a 1representa un segmento de un aud con un solo agujero. Las matrices pueden ser de diferentes longitudes y contener un número diferente de 1s, pero no estarán vacías.
Construiré mi escalera de la siguiente manera. Primero, coloco las dos tablas separadas exactamente una a una y alineo sus extremos izquierdos. Para cada índice i, mido la distancia entre el ihoyo th de la primera tabla con el ihoyo th de la segunda tabla, corto un trozo de varilla y lo adjunto entre los dos agujeros. Me detengo una vez que me quedo sin agujeros en una de las tablas.
Salida
Su salida es la cantidad total de varilla que necesitaré para los pasos, medidos en audios. La salida debe ser correcta al menos a seis dígitos significativos.
Ejemplo
Considere las entradas [0,1,1,0,1,1,1,1,0,0]y [1,0,0,1,1,1,0,0,1]. La escalera resultante se ve así:

La longitud total de la barra en esta escalera es 7.06449510224598auds.
Reglas
Puede escribir una función o un programa completo. El conteo de bytes más bajo gana, y las lagunas estándar no se permiten.
Casos de prueba
[0] [0] -> 0.0
[0] [1,0] -> 0.0
[1,0,0] [1,1,1,1,1] -> 1.0
[0,1,0,1] [1,0,0,1] -> 2.414213562373095
[0,1,1,0,1,1,1,1,0,0] [1,0,0,1,1,1,0,0,1] -> 7.06449510224598
[1,1,1,1,1] [0,0,1,1,0,1,0,0,1] -> 12.733433128760744
[0,0,0,1,0,1,1,0,0,0,1,1,1,0,0,1,0,1,1,0,0,0,1,0] [0,0,1,1,0,1,1,1,0,0,0,0,0,1,1,0,1,1,0,0,0,1] -> 20.38177416534678