Menu
CoddyTech
flag Ar iconالعربيةdown icon

Climbing Stairs

تقف عند أسفل درج مكوّن من n درجات. في كل حركة تصعد إما درجة واحدة أو درجتين. يُعدّ مساران مختلفين إذا اختلف تسلسل الحركات، لذا فإن 1, 2 و2, 1 طريقتان مختلفتان. تستقبل دالتك n وتُرجع عدد الطرق المختلفة للوصول إلى القمة.

الدالة

climbStairs(n: integer) → integer
ninteger
عدد الدرجات في السُّلَّم
تُرجعinteger
عدد المتتاليات المختلفة من خطوات بمقدار 1 وخطوات بمقدار 2 التي تصل إلى الخطوة n

القيود

  • 1 ≤ n ≤ 45
  • الإجابة تقع ضمن نطاق عدد صحيح موقّع من 32 بت: n = 45 يعطي 1836311903.

أمثلة

المدخلات
n = 3
المخرجات
3
الشرح
يمكن صعود ثلاث درجات على النحو 1, 1, 1، أو 1, 2، أو 2, 1، لذا توجد 3 طرق.

lock icon+13 اختبارات مخفية عند الإرسال

challenge icon

سؤال إضافي

ماذا لو كانت بعض الخطوات معطّلة، وربما لا تستطيع الوقوف عليها أبدًا؟ كيف تتغيّر علاقة العودية، وما العدد الخاص بالخطوة المعطّلة؟

إعادة ضبط الشيفرة
def climbStairs(n):
    # اكتب الكود هنا
حالات الاختبار

الحالة 1

الحالة 2

المدخلات

n = 3

المتوقع

3