المسارات
/
Elixir
Elixir
/
التمارين
/
المصفوفة الفرعية
المصفوفة الفرعية

المصفوفة الفرعية

سهل

التعليمات

بالنظر إلى أي مصفوفتين 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 غير متساويتين

الاختبارات البطيئة

تم وسم اختبار واحد أو أكثر من اختبارات هذا التمرين بالوسم :slow، لأنها قد تستغرق وقتًا طويلًا حتى تنتهي. ولهذا السبب، لن يُشغّلها مشغّل الاختبارات الآلي على المنصة. إذا كنت تحلّ هذا التمرين مباشرةً على المنصة في محرّر الويب، فقد يكون من الأفضل أن تنزّل هذا التمرين إلى جهازك بدلًا من ذلك. سيتيح لك ذلك تشغيل جميع الاختبارات والتحقق من كفاءة حلّك.

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Elixir Exercism

مستعد لبدء المصفوفة الفرعية؟

سجّل في Exercism لتتعلّم وتتقن Elixir عبر 58 مفهومًا168 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.