मान लीजिए हमारे पास एक संख्या a है, हमें n ढूंढना है, जैसे कि n का फैक्टोरियल (n!) a के समान हो। जैसा कि हम जानते हैं, फैक्टोरियल n = n * (n - 1) * (n - 2) * ... * 1। यदि ऐसा कोई पूर्णांक n नहीं है तो -1 लौटाएं।
उदाहरण के लिए, यदि इनपुट है a = 120, तो आउटपुट होगा 5।
हल करने के चरण
i := 0,num := 1L :=एक नई सूची।- जब तक
i < a:i := numका फैक्टोरियल।iकोLके अंत में डालें।num := num + 1
- यदि
aLमें है, तो(L में a का इंडेक्स) + 1लौटाएं। - अन्यथा,
-1लौटाएं।
उदाहरण
import math
class Solution:
def solve(self, a):
i, num = 0, 1
L = []
while i < a:
i = math.factorial(num)
L.append(i)
num += 1
if a in L:
return L.index(a) + 1
else:
return -1
ob = Solution()
print(ob.solve(120))
इनपुट
120
आउटपुट
5