কম্পিউটার

পাইথনে আবর্তিত অ্যারের জন্য সর্বাধিক ওজনযুক্ত যোগফল খুঁজে বের করার জন্য প্রোগ্রাম


ধরুন আমাদের কয়েকটি উপাদানের একটি অ্যারে আছে। অ্যারের উপাদানগুলি ঘোরানো হলে আমাদের সর্বাধিক ওজনযুক্ত যোগফল খুঁজে বের করতে হবে। একটি অ্যারের সংখ্যার ওজনযুক্ত যোগফল নীচের মত গণনা করা যেতে পারে −

$$\mathrm{𝑆=\sum_{\substack{𝑖=1}}^{n}𝑖∗𝑛𝑢𝑚𝑠[𝑖]}$$

সুতরাং, যদি ইনপুটটি 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

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • n :=সংখ্যার আকার
  • sum_a :=সংখ্যায় সমস্ত উপাদানের যোগফল
  • উত্তর :=0 থেকে n রেঞ্জের সমস্ত i এর জন্য (সংখ্যা[i] *(i + 1)) এর সমস্ত উপাদানের যোগফল
  • cur_val :=উত্তর
  • আমি 0 থেকে n - 1 রেঞ্জের জন্য, কর
    • cur_val :=cur_val - sum_a + nums[i] * n
    • উত্তর :=সর্বাধিক উত্তর এবং cur_val
  • উত্তর ফেরত দিন

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

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. অ্যারের যোগফল খুঁজে পেতে পাইথন প্রোগ্রাম

  2. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  3. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  4. n দ্বারা বিভক্ত অ্যারে গুণের অনুস্মারক সন্ধানের জন্য পাইথন প্রোগ্রাম