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

Python में दिए गए अभाज्य संख्या का गुणक होने वाले AP में पहला तत्व ढूंढना



मान लीजिए हमारे पास एक AP श्रृंखला का पहला पद (A) और सार्व अंतर (d) है, और हमारे पास एक अभाज्य संख्या P भी है, हमें दिए गए AP में उस पहले तत्व की स्थिति ढूंढनी है जो दी गई अभाज्य संख्या P का गुणक है।

तो, यदि इनपुट A = 3, D = 4, P = 5 की तरह है, तो आउटपुट 3 होगा क्योंकि दी गई AP का चौथा पद अभाज्य संख्या 5 का गुणक है। तो, पहला पद = 3, दूसरा पद = 3+4 = 7, तीसरा पद = 3+2*4 = 11 और चौथा पद = 3+3*4 = 15।

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

  • एक फ़ंक्शन get_pow() परिभाषित करें। यह x, y, p लेगा

  • ans := 1

  • x := x mod p

  • जब y > 0, करें

    • यदि y AND 1 शून्येतर है, तो

      • ans := (ans * x) mod p

    • y := y/2

    • x := (x * x) mod p

  • ans वापस करें

  • मुख्य विधि से, निम्नलिखित करें -

  • A := A mod P

  • D := D mod P

  • यदि A, 0 के समान है, तो

    • 0 वापस करें

  • अन्यथा जब D, 0 के समान है, तो

    • -1 वापस करें

  • अन्यथा,

    • X := get_pow(D, P - 2, P)

    • (X * (P - A)) mod P वापस करें

उदाहरण

बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

def get_pow(x, y, p) :     ans = 1     x = x % p     while y > 0 :         if y & 1 :             ans = (ans * x) % p         y = y >> 1         x = (x * x) % p     return ans def get_nearest(A, D, P) :     A %= P     D %= P     if A == 0 :         return 0     elif D == 0 :         return -1     else :         X = get_pow(D, P - 2, P)         return (X * (P - A)) % P A = 3 D = 4 P = 5 print(get_nearest(A, D, P))

इनपुट

A = 3 D = 4 P = 5

आउटपुट

3

  1. - पायथन में अभाज्य संख्या खोजने के विभिन्न तरीके

    सबसे पहले हमें यह जानने की जरूरत है कि अभाज्य संख्या क्या है। एक अभाज्य संख्या हमेशा एक धनात्मक पूर्णांक संख्या होती है और ठीक 2 पूर्णांकों (1 और संख्या स्वयं) से विभाज्य होती है, 1 अभाज्य संख्या नहीं है। अब हम अभाज्य संख्या खोजने के कुछ तरीकों पर चर्चा करेंगे। विधि 1 फॉर लूप्स का उपयोग करना उदाहरण

  1. - पायथन प्रोग्राम: 2D ऐरे में k-वां सबसे छोटा एलिमेंट खोजना

    एक n×n यूजर इनपुट इंटीजर मैट्रिक्स दिया गया है और k का मान। हमारा कार्य 2D ऐरे में k-वां सबसे छोटा एलिमेंट ढूंढना है। यहां हम heapq मॉड्यूल का उपयोग करते हैं। पायथन में हीप क्यू (या heapq) उपलब्ध है। इस मॉड्यूल की तकनीक यह है कि हर बार हीप एलिमेंट का सबसे छोटा पॉप किया जाता है (मिन हीप)। nsmallest()

  1. - Python में दी गई लिस्ट में किसी आइटम का इंडेक्स कैसे खोजें?

    लिस्ट में किसी एलिमेंट की पोजीशन (किसी भी सीक्वेंस डेटा टाइप के लिए) index() मेथड द्वारा प्राप्त की जाती है। यह मेथड दिए गए एलिमेंट के पहले ऑकरेंस को ढूंढता है। >>> L1=[45, 32, 100, 10, 24, 56] >>> L1.index(24) 4