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

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

متوسط

التعليمات

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

السجلات

السجل الاستخدام النوع الوصف
$a0 إدخال عنوان عناصر المصفوفة الأولى
$a1 إدخال عدد صحيح حجم المصفوفة الأولى، بالكلمات
$a2 إدخال عنوان عناصر المصفوفة الثانية
$a3 إدخال عدد صحيح حجم المصفوفة الثانية، بالكلمات
$v0 إخراج عدد صحيح 0 = equal، 1 = unequal، 2 = sublist، 3 = superlist
$t0-9 مؤقت أي نوع تُستخدم للتخزين المؤقت
تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
MIPS Assembly Exercism

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

سجّل في Exercism لتتعلّم وتتقن MIPS Assembly عبر 70 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.