یک تابع ایجاد کنید که فاکتوریلها را از یک لیست فیلتر کند. فاکتوریل عددی است که میتواند به صورت زیر نمایش داده شود:
n! = n * (n-1) * (n-2) * ... * 3 * 2 * 1
به صورت بازگشتی، به شکل زیر نمایش داده می شود:
n! = n * (n-1)!
نمونه ورودی و خروجی
FilterFactorials([1, 2, 3, 4, 5, 6, 7]) ➞ [1, 2, 6]
FilterFactorials([1, 4, 120]) ➞ [1, 120]
FilterFactorials([8, 9, 10]) ➞ []
EXPECT_EQ(FilterFactorials(std::vector({1, 2, 3, 4, 5, 6, 7})), std::vector ({1, 2, 6})); EXPECT_EQ(FilterFactorials(std::vector ({1, 4, 120})), std::vector ({1, 120})); EXPECT_EQ(FilterFactorials(std::vector ({8, 9, 10})), std::vector ({})); EXPECT_EQ(FilterFactorials(std::vector ({1, 8, 9, 10})), std::vector ({1}));
نظرات