با توجه به عدد صحیح ورودی، طبق قوانین زیر یک عدد جدید به دست آورید:
- عدد را به گروههای دو رقمی تقسیم کنید. اگر عدد دارای تعداد ارقام فرد باشد،
"invalid"
را برگردانید. - برای هر گروه دو رقمی، رقم آخر را به تعداد دفعاتی که مقدار رقم اول است به یک رشته جدید اضافه کنید.
- نتیجه را به صورت یک عدد صحیح برگردانید.
look_and_say(3132) ➞ 111222
# با خواندن عدد به صورت رقم به رقم، سه "1" و سه "2" به دست میآید.
# بنابراین، سه تا یک و سه تا دو کنار هم قرار میگیرند.
نمونه ورودی و خروجی
look_and_say(95) ➞ "555555555"
look_and_say(1213141516171819) ➞ "23456789"
look_and_say(120520) ➞ "200"
self.assertEqual(look_and_say(95), "555555555") self.assertEqual(look_and_say(1213141516171819), "23456789") self.assertEqual(look_and_say(120520), "200") self.assertEqual(look_and_say(231), "invalid")
پاسخ های کاربران به این تمرین
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
نظرات