Subarray

Subarray

Media

Instrucciones

Dados dos arrays cualesquiera, A y B, determina si:

  • El array A es igual al array B; o
  • El array A contiene el array B (es decir, A es un superarray de B); o
  • El array B contiene el array A (es decir, A es un subarray de B); o
  • Ninguna de las anteriores es cierta, así que los arrays A y B no son iguales

En concreto, el array A es igual al array B si ambos arrays tienen los mismos valores en el mismo orden. El array A es un superarray de B si A contiene una subsecuencia contigua de valores igual a B. El array A es un subarray de B si B contiene una subsecuencia contigua de valores igual a A.

Ejemplos:

  • Si A = [] y B = [] (ambos arrays están vacíos), entonces A y B son iguales
  • Si A = [1, 2, 3] y B = [], entonces A es un superarray de B
  • Si A = [] y B = [1, 2, 3], entonces A es un subarray de B
  • Si A = [1, 2, 3] y B = [1, 2, 3, 4, 5], entonces A es un subarray de B
  • Si A = [3, 4, 5] y B = [1, 2, 3, 4, 5], entonces A es un subarray de B
  • Si A = [3, 4] y B = [1, 2, 3, 4, 5], entonces A es un subarray de B
  • Si A = [1, 2, 3] y B = [1, 2, 3], entonces A y B son iguales
  • Si A = [1, 2, 3, 4, 5] y B = [2, 3, 4], entonces A es un superarray de B
  • Si A = [1, 2, 4] y B = [1, 2, 3, 4, 5], entonces A y B no son iguales
  • Si A = [1, 2, 3] y B = [1, 3, 2], entonces A y B no son iguales

Registros

Registro Uso Tipo Descripción
$a0 entrada dirección elementos del primer array
$a1 entrada entero tamaño del primer array, en palabras
$a2 entrada dirección elementos del segundo array
$a3 entrada entero tamaño del segundo array, en palabras
$v0 salida entero 0 = iguales, 1 = distintas, 2 = sublista, 3 = superlista
$t0-9 temporal cualquiera se usa para almacenamiento temporal
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
MIPS Assembly Exercism

¿Listo para empezar Subarray?

Regístrate en Exercism para aprender y dominar MIPS Assembly con 70 ejercicios y mentoría humana real, todo gratis.