Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में उलटा फैक्टोरियल

मान लीजिए कि हमारे पास एक संख्या है, हमें n ज्ञात करना है, जैसे कि n (n!) का भाज्य a के समान है। जैसा कि हम जानते हैं, भाज्य n =n * (n - 1) * (n - 2) * ... * 1. यदि ऐसा कोई पूर्णांक n नहीं है तो -1 लौटाएं।

इसलिए, यदि इनपुट a =120 जैसा है, तो आउटपुट 5 होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • i :=0, संख्या :=1
  • L:=एक नई सूची
  • जबकि मैं <ए, करता हूं
    • i :=संख्या का भाज्य
    • L के अंत में i डालें
    • संख्या:=संख्या + 1
  • यदि a, L में है, तो
    • (एल में एक का सूचकांक) +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

  1. एक संख्या के भाज्य के लिए पायथन कार्यक्रम

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन −हमारा कार्य n के भाज्य की गणना करना। एक गैर-ऋणात्मक संख्या का भाज्य − . द्वारा दिया जाता है n! = n*n-1*n-2*n-3*n-4*.................*3*2*1 हमारे पास समस्या के दो संभावित समाधान हैं पुनरावर्ती

  1. पायथन में एक पुनरावर्ती कार्य कैसे लिखें?

    एक पुनरावर्ती फ़ंक्शन एक ऐसा फ़ंक्शन है जो अपने निष्पादन के दौरान स्वयं को कॉल करता है। यह फ़ंक्शन को कई बार खुद को दोहराने में सक्षम बनाता है, परिणाम और प्रत्येक पुनरावृत्ति के अंत को आउटपुट करता है। रिकर्सन का अनंत से कुछ लेना-देना है। एक पूर्णांक का भाज्य ज्ञात करने के लिए पुनरावर्ती फलन का एक

  1. पायथन में रिकर्सन और बैकट्रैकिंग क्या है?

    पुनरावृत्ति 0। बैकट्रैकिंग बैकट्रैकिंग कुछ कम्प्यूटेशनल समस्या के समाधान खोजने के लिए एक सामान्य एल्गोरिथम है, जो समाधानों के लिए क्रमिक रूप से विकल्प बनाता है, और ट्रैक के निरंतर प्रसंस्करण को अस्वीकार करता है जिससे असंभव समाधान हो सकते हैं। बैकट्रैकिंग हमें पिछले विकल्पों को पूर्ववत करने की अनु