Треки
/
Clojure
Clojure
/
Вправи
/
Підмасив
Підмасив

Підмасив

Середня

Вказівки

Маючи два будь-які масиви A і B, визначмо, чи:

  • Масив A дорівнює масиву B; або
  • Масив A містить масив B (A є надмасивом B); або
  • Масив A міститься в масиві B (A є підмасивом B); або
  • Жодне з наведеного не є правильним, отже масиви A і B нерівні

Конкретніше: масив A дорівнює масиву B, якщо обидва масиви містять ті самі значення в тому самому порядку. Масив A є надмасивом B, якщо A містить неперервну підпослідовність значень, рівну B. Масив A є підмасивом B, якщо B містить неперервну підпослідовність значень, рівну A.

Приклади:

  • Якщо A = [] і B = [] (обидва масиви порожні), то A і B рівні
  • Якщо A = [1, 2, 3] і B = [], то A є надмасивом B
  • Якщо A = [] і B = [1, 2, 3], то A є підмасивом B
  • Якщо A = [1, 2, 3] і B = [1, 2, 3, 4, 5], то A є підмасивом B
  • Якщо A = [3, 4, 5] і B = [1, 2, 3, 4, 5], то A є підмасивом B
  • Якщо A = [3, 4] і B = [1, 2, 3, 4, 5], то A є підмасивом B
  • Якщо A = [1, 2, 3] і B = [1, 2, 3], то A і B рівні
  • Якщо A = [1, 2, 3, 4, 5] і B = [2, 3, 4], то A є надмасивом B
  • Якщо A = [1, 2, 4] і B = [1, 2, 3, 4, 5], то A і B нерівні
  • Якщо A = [1, 2, 3] і B = [1, 3, 2], то A і B нерівні

Додаток

Note

Наведені вище інструкції синхронізовано зі спільним репозиторієм, щоб усі мовні треки були узгоджені між собою. Цей додаток дає додаткові пояснення або за потреби змінює інструкції, щоб краще узгодити їх із цілями треку Clojure.

У цій вправі в треку Clojure можна припустити, що вхідні дані - це вектор, як зазначено в тестах.

Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
Clojure Exercism

Час розпочати Підмасив?

Зареєструйтеся на Exercism, щоб вивчати й опановувати Clojure, а також 12 концепцій105 вправ та справжнє наставництво від людей, і все це безкоштовно.