تابعی بنویسید که ارقام هر عدد در یک لیست را بر اساس ترتیب صعودی (asc) یا نزولی (desc) مرتب کند.
نمونه ورودی و خروجی
ReorderDigits([515, 341, 98, 44, 211], "asc") ➞ [155, 134, 89, 44, 112]
ReorderDigits([515, 341, 98, 44, 211], "desc") ➞ [551, 431, 98, 44, 211]
ReorderDigits([63251, 78221], "asc") ➞ [12356, 12278]
نکات
- اعداد یکرقمی بدون تغییر باقی میمانند (صرف نظر از جهت مرتبسازی).
- ترتیب اعداد در لیست باید حفظ شود.
EXPECT_EQ(ReorderDigits({515, 341, 98, 44, 211}, "asc"), std::vector({155, 134, 89, 44, 112})); EXPECT_EQ(ReorderDigits({515, 341, 98, 44, 211}, "desc"), std::vector ({551, 431, 98, 44, 211})); EXPECT_EQ(ReorderDigits({63251, 78221}, "asc"), std::vector ({12356, 12278})); EXPECT_EQ(ReorderDigits({63251, 78221}, "desc"), std::vector ({65321, 87221})); EXPECT_EQ(ReorderDigits({1, 2, 3, 4}, "asc"), std::vector ({1, 2, 3, 4})); EXPECT_EQ(ReorderDigits({1, 2, 3, 4}, "desc"), std::vector ({1, 2, 3, 4}));
نظرات