یک لانهکلمه با قراردادن متوالی یک کلمه در داخل خودش ساخته میشود. عمق لانه نشاندهنده تعداد دفعاتی است که این عمل تکرار شده است.
روش ساخت:
- کلمه شروع را در نظر بگیرید.
- در هر مرحله، کلمه اصلی را داخل نسخه فعلی قرار دهید.
- این فرآیند تا رسیدن به لانه نهایی ادامه مییابد.
مثال با کلمه “incredible” و عمق 3:
- شروع:
incredible - مرحله ۱:
incre+incredible+dible=increincredibledible - مرحله ۲:
increin+incredible+credibledible=increinincrediblecredibledible - مرحله ۳:
increinincr+incredible+ediblecredibledible=increinincrincredibleediblecredibledible
تابعی بنویسید که با دریافت کلمه شروع و لانه نهایی، عمق لانه را برگرداند.
نمونه ورودی و خروجی
WordNest("floor", "floor") ➞ 0
WordNest("code", "cocodccococodededeodeede") ➞ 5
WordNest("incredible", "increinincrincredibleediblecredibledible") ➞ 3
WordNest("floor", "floor") ➞ 0
WordNest("code", "cocodccococodededeodeede") ➞ 5
WordNest("incredible", "increinincrincredibleediblecredibledible") ➞ 3
WordNest("jinx", "jijijjijjijijjinxinxnxnxinxnxinxnxnx") ➞ 8
WordNest("last", "lalastst") ➞ 1
WordNest("silence", "sisilsisilencelenceencelence") ➞ 3
برای ثبت پاسخ خود، ابتدا باید در سایت وارد شوید.
سلام
ممکنه توضیح بدید که چطور باید لانه کلمه رو بدست آورد؟
فکر میکردم به این شکل باشه که:
ca + cake + ke اما به نظر میاد که اینطور نیست
همچنین چطور باید دونست که قسمت های کلمه اصلی در دوطرفش چندبار تکرار شدن به طوری که خودش را بسازن؟
سلام. وقت بخیر
در هر مرحله، کلمه اصلی میتونه در هر جایی در بین مرحله قبل قرار بگیره. این مثالی که شما نوشتید هم درست هست، ولی میتونه همیشه وسط جمله قبل نباشه و هر جایی در بین مرحله قبل قرار میگیره. حالا شما باید الگوریتمی برای حل این مسئله پیدا کنید که بتونه تعداد این مراحل رو به دست بیاره.
اینجا بیشتر مهمه که بتونید روش حل مسئله رو کشف کنید و سینتکس خاصی نداره.