تابعی بنویسید که یک عدد n
را بهعنوان ورودی دریافت کند و بزرگترین عدد صحیحی را که کوچکتر یا مساوی n
است و بیشترین مجموع ارقام را دارد، برگرداند.
مثال
largest_digit_sum(100) ➞ 99
# مجموع ارقام 99 = 9 + 9 = 18
# تمام اعداد از 0 تا 98 و خود 100 مجموع ارقامی کمتر از 18 دارند.
largest_digit_sum(48) ➞ 48
# مجموع ارقام 48 = 4 + 8 = 12
# مجموع ارقام 39 = 3 + 9 = 12
# 48 بزرگتر از 39 است، پس 48 برگردانده میشود.
نمونه ورودی و خروجی
LargestDigitSum(100) ➞ 99
LargestDigitSum(48) ➞ 48
LargestDigitSum(10) ➞ 9
EXPECT_EQ(LargestDigitSum(100), 99); EXPECT_EQ(LargestDigitSum(48), 48); EXPECT_EQ(LargestDigitSum(10), 9); EXPECT_EQ(LargestDigitSum(1), 1); EXPECT_EQ(LargestDigitSum(18), 18); EXPECT_EQ(LargestDigitSum(2090), 1999); EXPECT_EQ(LargestDigitSum(9000000), 8999999);
پاسخ های کاربران به این تمرین
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
نظرات