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

पायथन में ऑपरेशन के बाद अधिकतम सबएरे का योग खोजने का प्रोग्राम


मान लीजिए हमें इंटीजर नंबर्स वाला एक ऐरे दिया गया है। हम एक ऑपरेशन कर सकते हैं जहां हम array[i] के मान को उसके वर्ग मान से बदल सकते हैं; यानी array[i] * array[i]। केवल इस तरह का एक ऑपरेशन अनुमत है और हमें ऑपरेशन के बाद अधिकतम संभव सबएरे का योग वापस करना है। सबएरे खाली नहीं हो सकता।

उदाहरण के लिए, यदि इनपुट array = [4, 1, -2, -1] है, तो आउटपुट 17 होगा।

यदि हम array[0] के मान को उसके वर्ग मान से बदलते हैं, तो ऐरे [16, 1, -2, -1] बन जाता है। इससे संभव अधिकतम सबएरे [16, 1] है, और इसका अधिकतम योग मान 16 + 1 = 17 है।

हल करने के चरण

  1. dp1 := float('-inf') मान वाली नई सूची
  2. dp2 := float('-inf') मान वाली नई सूची
  3. array में प्रत्येक num के लिए:
    • max(dp1[-1] + num, num) को dp1 के अंत में जोड़ें
    • max(dp1[-2] + num**2, num**2, dp2[-1] + num) को dp2 के अंत में जोड़ें
  4. dp2 का अधिकतम एलिमेंट वापस करें।

उदाहरण

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

def solve(array):
    dp1 = [float('-inf')]
    dp2 = [float('-inf')]
    for num in array:
        dp1.append(max(dp1[-1] + num, num))
        dp2.append(max(dp1[-2] + num**2, num**2, dp2[-1] + num))
    return max(dp2)

print(solve([4, 1, -2, -1]))

इनपुट

[4, 1, -2, -1]

आउटपुट

17
  1. पायथन में दिए गए बाइनरी ट्री में BST का सबसे बड़ा योग मान ढूंढने का प्रोग्राम पायथन में दिए गए बाइनरी ट्री में BST का सबसे बड़ा योग मान ढूंढने का प्रोग्राम

    मान लीजिए हमें एक बाइनरी ट्री प्रदान की गई है। हमें यह ढूंढना है कि क्या उसके सबट्रीज में बाइनरी सर्च ट्री (BST) मौजूद हैं और सबसे बड़े BST का योग ढूंढना है। योग ढूंढने के लिए, हम उस BST में प्रत्येक नोड के मान जोड़ते हैं। हम आउटपुट के रूप में योग मान लौटाते हैं। इसलिए, यदि इनपुट है: तो आउटपुट 12

  1. Python प्रोग्राम में ऐरे का योग खोजना Python प्रोग्राम में ऐरे का योग खोजना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक ऐरे दिया गया है, हमें ऐरे का योग निकालने की आवश्यकता है। पूरे ऐरे को पार करने और प्रत्येक इंडेक्स पर तत्व को जोड़कर योग प्राप्त करने का ब्रूट-फोर्स दृष्टिकोण नीचे चर्चा किया गया है। उदाहरण # sum फ़ंक्शन def

  1. पायथन प्रोग्राम: ऐरे का योग ढूंढें पायथन प्रोग्राम: ऐरे का योग ढूंढें

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट इनपुट के रूप में एक ऐरे दिए जाने पर, हमें दिए गए ऐरे का योग निकालने की आवश्यकता है। यहां हम ब्रूट-फोर्स दृष्टिकोण का पालन कर सकते हैं यानी एक लिस्ट को ट्रैवर्स करना और प्रत्येक एलिमें