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

पायथन में रोटेटेड ऐरे के लिए अधिकतम वेटेड योग खोजने का प्रोग्राम


मान लीजिए हमारे पास कुछ एलिमेंट्स का एक ऐरे है। हमें ऐरे एलिमेंट्स को रोटेट करने पर अधिकतम वेटेड योग ढूंढना है। ऐरे nums का वेटेड योग नीचे की तरह गणना किया जा सकता है:

$$\mathrm{S = \sum_{i=1}^{n} i * nums[i]}$$

उदाहरण के लिए, यदि इनपुट L = [5,3,4] है, तो आउटपुट 26 होगा क्योंकि:

  • ऐरे है [5,3,4], योग है 5 + 2*3 + 3*4 = 5 + 6 + 12 = 23
  • ऐरे है [3,4,5], योग है 3 + 2*4 + 3*5 = 3 + 8 + 15 = 26 (अधिकतम)
  • ऐरे है [4,5,3], योग है 4 + 2*5 + 3*3 = 4 + 10 + 9 = 23

हल करने के चरण

  1. n := len(nums)
  2. sum_a := sum(nums)
  3. ans := sum(nums[i] * (i + 1) for i in range(n))
  4. cur_val := ans
  5. i को 0 से n - 1 तक लूप चलाएं:
    • cur_val := cur_val - sum_a + nums[i] * n
    • ans := max(ans, cur_val)
  6. ans वापस करें।

उदाहरण

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

def solve(nums):
    n = len(nums)
    sum_a = sum(nums)
    cur_val = ans = sum(nums[i] * (i + 1) for i in range(n))
    for i in range(n):
        cur_val = cur_val - sum_a + nums[i] * n
        ans = max(ans, cur_val)
    return ans

nums = [5,3,4]
print(solve(nums))

इनपुट

[5,3,4]

आउटपुट

26
  1. पायथन प्रोग्राम: संख्या के ऑड फैक्टर्स का योग ढूंढें पायथन प्रोग्राम: संख्या के ऑड फैक्टर्स का योग ढूंढें

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट एक नंबर इनपुट n दिए जाने पर, कार्य संख्या के ऑड फैक्टर्स का योग निकालना है। यहां हमें पहले सभी इवन फैक्टर्स को समाप्त करने की आवश्यकता है। सभी इवन फैक्टर्स को हटाने के लिए, हम n को बार-बार तब तक विभाजित

  1. पायथन प्रोग्राम: संख्या के इवन फैक्टर्स का योग ढूंढें पायथन प्रोग्राम: संख्या के इवन फैक्टर्स का योग ढूंढें

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट एक नंबर इनपुट n दिए जाने पर, कार्य संख्या के इवन फैक्टर्स का योग निकालना है। यहां हमें पहले सभी ऑड फैक्टर्स को समाप्त करने की आवश्यकता है। यदि इनपुट नंबर ऑड है तो इसका कोई इवन फैक्टर नहीं है इसलिए सीधे

  1. पायथन प्रोग्राम: ऐरे मल्टीप्लिकेशन को n से विभाजित करने पर शेषफल ढूंढें पायथन प्रोग्राम: ऐरे मल्टीप्लिकेशन को n से विभाजित करने पर शेषफल ढूंढें

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट कई नंबर और एक नंबर इनपुट n दिए जाने पर, हमें सभी नंबर को n से विभाज्य गुणा करने के बाद शेषफल प्रिंट करना होगा। दृष्टिकोण पहले, arr[i] % n जैसा शेषफल निकालें। फिर इस शेषफल को वर्तमान परिणाम से गुणा करे