Subarray

Subarray

Facile

Istruzioni

Date due liste qualsiasi A e B, stabilisci se:

  • la lista A è uguale alla lista B; oppure
  • la lista A contiene la lista B (A è una superlista di B); oppure
  • la lista A è contenuta nella lista B (A è una sottolista di B); oppure
  • nessuna delle precedenti è vera, quindi le liste A e B sono diverse

In particolare, la lista A è uguale alla lista B se entrambe le liste hanno gli stessi valori nello stesso ordine. La lista A è una superlista di B se A contiene una sottosequenza contigua di valori uguale a B. La lista A è una sottolista di B se B contiene una sottosequenza contigua di valori uguale a A.

Esempi:

  • Se A = [] e B = [] (entrambe le liste sono vuote), allora A e B sono uguali
  • Se A = [1, 2, 3] e B = [], allora A è una superlista di B
  • Se A = [] e B = [1, 2, 3], allora A è una sottolista di B
  • Se A = [1, 2, 3] e B = [1, 2, 3, 4, 5], allora A è una sottolista di B
  • Se A = [3, 4, 5] e B = [1, 2, 3, 4, 5], allora A è una sottolista di B
  • Se A = [3, 4] e B = [1, 2, 3, 4, 5], allora A è una sottolista di B
  • Se A = [1, 2, 3] e B = [1, 2, 3], allora A e B sono uguali
  • Se A = [1, 2, 3, 4, 5] e B = [2, 3, 4], allora A è una superlista di B
  • Se A = [1, 2, 4] e B = [1, 2, 3, 4, 5], allora A e B sono diverse
  • Se A = [1, 2, 3] e B = [1, 3, 2], allora A e B sono diverse

Test lenti

Uno o più test di questo esercizio sono stati contrassegnati come :slow, perché potrebbero metterci molto tempo a terminare. Per questo motivo non verranno eseguiti sulla piattaforma dal test runner automatico. Se stai risolvendo questo esercizio direttamente sulla piattaforma, nell'editor web, potresti invece valutare di scaricarlo sul tuo computer. Così potrai eseguire tutti i test e verificare l'efficienza della soluzione.

Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Elixir Exercism

Vuoi iniziare Subarray?

Iscriviti a Exercism per imparare e padroneggiare Elixir con 58 concetti168 esercizi e il mentoring di persone reali, tutto gratis.