بکندباز

با توجه به عدد صحیح ورودی، طبق قوانین زیر یک عدد جدید به دست آورید:

  • عدد را به گروه‌های دو رقمی تقسیم کنید. اگر عدد دارای تعداد ارقام فرد باشد، "invalid" را برگردانید.
  • برای هر گروه دو رقمی، رقم آخر را به تعداد دفعاتی که مقدار رقم اول است به یک رشته جدید اضافه کنید.
  • نتیجه را به صورت یک عدد صحیح برگردانید.
look_and_say(3132) ➞ 111222

# با خواندن عدد به صورت رقم به رقم، سه "1" و سه "2" به دست می‌آید.
# بنابراین، سه تا یک و سه تا دو کنار هم قرار می‌گیرند.

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

LookAndSay(95) ➞ "555555555"

LookAndSay(1213141516171819) ➞ "23456789"

LookAndSay(120520) ➞ "200"

 

EXPECT_EQ(LookAndSay(95), "555555555");
EXPECT_EQ(LookAndSay(1213141516171819), "23456789");
EXPECT_EQ(LookAndSay(120520), "200");
EXPECT_EQ(LookAndSay(231), "invalid");

هنوز پاسخی برای این تمرین ثبت نشده است

نظرات

*
*