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

पायथन में जांचें कि सरणी के तत्वों को दी गई अभाज्य संख्याओं से गुणा करके समान बनाया जा सकता है या नहीं


मान लीजिए हमारे पास दो सरणियां हैं, एक nums है और दूसरी primes है। हमें जांचना है कि क्या nums के सभी तत्वों को primes सरणी से एक या अधिक अभाज्य संख्याओं से गुणा करके समान बनाना संभव है।

इसलिए, यदि इनपुट nums = [25, 100], primes = [2, 5] है, तो आउटपुट True होगा क्योंकि हम 25 को 2 से दो बार गुणा करके 100 प्राप्त कर सकते हैं तब सभी तत्व समान हैं।

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

  • lcm_arr := nums में सभी तत्वों का LCM
  • i के लिए 0 से nums के आकार - 1 तक की रेंज में, करें
    • val := lcm_arr/nums[i]
    • यदि primes का आकार 0 नहीं है और val 1 नहीं है, तो
      • जब val mod primes[0] 0 हो, तब तक करें
        • val := val/primes[j]
    • यदि val 1 के समान नहीं है, तो
      • False लौटाएं
  • True लौटाएं

उदाहरण

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

from math import gcd
def array_lcm(nums):
    ans = nums[0]
    for i in range(1,len(nums)):
        ans = (nums[i]*ans)/gcd(nums[i], ans)
    return ans
def solve(nums, primes):
    lcm_arr = array_lcm(nums)
    for i in range(len(nums)):
        val = lcm_arr/nums[i]
        for j in range(len(primes) and val != 1):
            while (val % primes[j] == 0):
                val = val/primes[j]
        if (val != 1):
            return False
    return True
nums = [25, 100]
primes = [2, 5]
print(solve(nums, primes))

इनपुट

[25, 100], [2, 5]

आउटपुट

True

  1. - पायथन में दिए गए ऑपरेशन को करके सभी तत्वों को बराबर बनाने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची दी गई है, हम मानों को बराबर बनाना चाहते हैं। अब एक ऑपरेशन मान लें जहां हम सूची से एक तत्व चुनते हैं और हर दूसरे मान को बढ़ाते हैं। हमें सभी तत्वों के मानों को बराबर बनाने के लिए आवश्यक न्यूनतम ऑपरेशनों की संख्या ढूंढनी है। उदाहरण के लिए, यदि इनपुट [

  1. - पायथन में जांचें कि दी गई स्ट्रिंग सूची के स्ट्रिंग तत्वों को जोड़कर बनाई जा सकती है या नहीं

    हमें कभी-कभी यह जांचने की आवश्यकता होती है कि कोई आवश्यक स्ट्रिंग सूची में मौजूद कई स्ट्रिंग्स से बनाई जा सकती है या नहीं। इसका क्रम भी मायने नहीं रखना चाहिए जिसमें स्ट्रिंग्स सूची में मौजूद हैं जिन्हें जोड़कर आवश्यक स्ट्रिंग प्राप्त की जानी है। permutations के साथ itertools से हम permutations फंक्

  1. - Python में न्यूनतम चालें सरणी तत्वों को समान करने के लिए II

    मान लीजिए हमारे पास एक गैर-खाली पूर्णांक सरणी है, हमें सभी सरणी तत्वों को समान बनाने के लिए आवश्यक न्यूनतम चालों की संख्या ढूंढनी है, जहां एक चाल चयनित तत्व को 1 से बढ़ाना या घटाना है। इसलिए जब सरणी [1, 2, 3] जैसी है, तो आउटपुट 2 होगा, क्योंकि 1 को 2 तक बढ़ाया जाएगा, और 3 को 2 तक घटाया जाएगा। इसे हल