بکندباز

یک لانه‌کلمه با قراردادن متوالی یک کلمه در داخل خودش ساخته می‌شود. عمق لانه نشان‌دهنده تعداد دفعاتی است که این عمل تکرار شده است.

روش ساخت:

  1. کلمه شروع را در نظر بگیرید.
  2. در هر مرحله، کلمه اصلی را داخل نسخه فعلی قرار دهید.
  3. این فرآیند تا رسیدن به لانه نهایی ادامه می‌یابد.

مثال با کلمه “incredible” و عمق 3:

  • شروع: incredible
  • مرحله ۱: incre + incredible + dible = increincredibledible
  • مرحله ۲: increin + incredible + credibledible = increinincrediblecredibledible
  • مرحله ۳: increinincr + incredible + ediblecredibledible = increinincrincredibleediblecredibledible

تابعی بنویسید که با دریافت کلمه شروع و لانه نهایی، عمق لانه را برگرداند.

نمونه ورودی و خروجی

word_nest("floor", "floor") ➞ 0

word_nest("code", "cocodccococodededeodeede") ➞ 5

word_nest("incredible", "increinincrincredibleediblecredibledible") ➞ 3
self.assertEqual(word_nest("floor", "floor"), 0)
self.assertEqual(word_nest("code", "cocodccococodededeodeede"), 5)
self.assertEqual(word_nest("incredible", "increinincrincredibleediblecredibledible"), 3)
self.assertEqual(word_nest("jinx", "jijijjijjijijjinxinxnxnxinxnxinxnxnx"), 8)
self.assertEqual(word_nest("last", "lalastst"), 1)
self.assertEqual(word_nest("silence", "sisilsisilencelenceencelence"), 3)

برای ثبت پاسخ خود، ابتدا باید در سایت وارد شوید.

پاسخ های کاربران به این تمرین

user-Vsz1
تصحیح اتوماتیک
‎پایتون‎
31 تير 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-ErJo
تصحیح اتوماتیک
‎پایتون‎
9 تير 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Mahdi-babaei
تصحیح اتوماتیک
‎پایتون‎
29 خرداد 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-j2ej
تصحیح اتوماتیک
‎پایتون‎
29 ارديبهشت 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-r39G
تصحیح اتوماتیک
‎پایتون‎
9 ارديبهشت 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-P7Jj
تصحیح اتوماتیک
‎پایتون‎
3 ارديبهشت 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-18gt
تصحیح اتوماتیک
‎پایتون‎
27 فروردين 1405

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

M.Sadeghi
تصحیح اتوماتیک
‎پایتون‎
18 دي 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-GLXq
تصحیح اتوماتیک
‎پایتون‎
30 آذر 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-ylQk
تصحیح اتوماتیک
‎پایتون‎
17 آذر 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-Cmfi
تصحیح اتوماتیک
‎پایتون‎
9 آبان 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-husl
تصحیح اتوماتیک
‎پایتون‎
29 مهر 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-7hyY
تصحیح اتوماتیک
‎پایتون‎
30 شهريور 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-za8l
تصحیح اتوماتیک
‎پایتون‎
24 مرداد 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-WFwX
تصحیح اتوماتیک
‎پایتون‎
15 خرداد 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Amin
تصحیح اتوماتیک
‎پایتون‎
21 ارديبهشت 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-ixnb
تصحیح اتوماتیک
‎پایتون‎
11 ارديبهشت 1404

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

نظرات

*
*

    DanialMahdik پاسخ

    سلام
    ممکنه توضیح بدید که چطور باید لانه کلمه رو بدست آورد؟
    فکر میکردم به این شکل باشه که:
    ca + cake + ke اما به نظر میاد که اینطور نیست
    همچنین چطور باید دونست که قسمت های کلمه اصلی در دوطرفش چندبار تکرار شدن به طوری که خودش را بسازن؟

      backendbaz پاسخ

      سلام. وقت بخیر

      در هر مرحله، کلمه اصلی میتونه در هر جایی در بین مرحله قبل قرار بگیره. این مثالی که شما نوشتید هم درست هست، ولی میتونه همیشه وسط جمله قبل نباشه و هر جایی در بین مرحله قبل قرار میگیره. حالا شما باید الگوریتمی برای حل این مسئله پیدا کنید که بتونه تعداد این مراحل رو به دست بیاره.

      اینجا بیشتر مهمه که بتونید روش حل مسئله رو کشف کنید و سینتکس خاصی نداره.

تمرینات مرتبط