Menu
CoddyTech

Add Two Numbers

لديك عددان صحيحان غير سالبين، كلٌّ منهما مخزَّن في قائمة مترابطة أحادية الاتجاه من أرقامه، بدءًا من الرقم الأقل أهمية. في القائمة الأولى، تحتوي العقدة i على الرقم values1[i] وترتبط بالعقدة next1[i]. وتعمل القائمة الثانية بالطريقة نفسها باستخدام next2 وvalues2. في كلتا القائمتين، تنهي -1 القائمة، والرأس هو العقدة 0. العقد غير مخزَّنة بترتيب القائمة، لذا اتبع الروابط.

أعِد أرقام مجموع العددين، بدءًا من الرقم الأقل أهمية.

الدالة

addTwoNumbers(next1: integer-array, values1: integer-array, next2: integer-array, values2: integer-array) → integer-array
next1integer-array
فهرس العقدة التي تشير إليها كل عقدة من العدد الأول، أو ‎-1‎ لعقدته الأخيرة
values1integer-array
الرقم الذي تحتفظ به كل عقدة من العدد الأول
next2integer-array
فهرس العقدة التي تشير إليها كل عقدة من العدد الثاني، أو -1 لعقدته الأخيرة
values2integer-array
الرقم الذي تحتفظ به كل عقدة من العدد الثاني
تُرجعinteger-array
أرقام المجموع، بدءًا من الأقل أهمية

القيود

  • 1 ≤ L1 ≤ 100، حيث إن L1 هو طول كلٍّ من next1 وvalues1.
  • 1 ≤ L2 ≤ 100، حيث إن L2 هو طول كلٍّ من next2 وvalues2.
  • 0 ≤ values1[i], values2[j] ≤ 9
  • كل عنصر في next1 هو -1 أو فهرس عقدة في القائمة الأولى، وكل عنصر في next2 هو -1 أو فهرس عقدة في القائمة الثانية.
  • بدءًا من العقدة 0، تزور كل قائمة جميع عقدها مرة واحدة بالضبط، ثم تصل إلى -1. لا توجد دورة.
  • لا يحتوي أي عدد على أصفار بادئة: تحمل العقدة الأخيرة في القائمة رقمًا غير 0، ما لم تكن القائمة مكوّنة من الرقم 0 وحده.

أمثلة

المدخلات
next1 = [2, -1, 1]values1 = [8, 6, 1]next2 = [2, -1, 1]values2 = [7, 5, 2]
المخرجات
[5, 4, 1, 1]
الشرح
تزور القائمة الأولى العقد 0, 2, 1 وتقرأ 8, 1, 6، أي العدد 618. وتقرأ الثانية 7, 2, 5، أي العدد 527. مجموعهما 1145، لذا تكون الإجابة 5, 4, 1, 1.
challenge icon

سؤال إضافي

كيف ستجمع الأعداد إذا كانت القوائم تخزّن الرقم الأكثر أهمية أولًا؟

إعادة ضبط الشيفرة
def addTwoNumbers(next1, values1, next2, values2):
    # اكتب الكود هنا

اختبار #1

اختبار #2

اختبار #3

الوسائط

next1 = [2, -1, 1]
values1 = [8, 6, 1]
next2 = [2, -1, 1]
values2 = [7, 5, 2]

الإخراج المتوقع

[5, 4, 1, 1]