কম্পিউটার

পাইথনে লেবেল থেকে সবচেয়ে বড় মান


ধরুন আমাদের কাছে আইটেমের একটি সেট আছে:i-th আইটেমের মান আছে [i] এবং লেবেল লেবেল[i]। তারপর, আমরা এই আইটেমগুলির একটি উপসেট S নেব, যেমন −

  • |এস| <=সংখ্যা_ওয়ান্টেড
  • প্রতিটি লেবেল L-এর জন্য, L লেবেল সহ S-এ উপস্থিত আইটেমের সংখ্যা হল <=use_limit৷

আমাদের উপসেট S.

এর সম্ভাব্য বৃহত্তম যোগফল খুঁজে বের করতে হবে

উদাহরণস্বরূপ, যদি ইনপুট মান =[5,4,3,2,1] হয় এবং লেবেলগুলি হয় [1,1,2,2,3], num_wanted =3, use_limit =1, তাহলে আউটপুট হবে 9 কারণ প্রথম, তৃতীয় এবং পঞ্চম আইটেমে উপসেটটি বেছে নেওয়া হয়েছে।

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

  • একটি অ্যারে তৈরি করুন v
  • আমি 0 থেকে মানের দৈর্ঘ্যের পরিসরে
    • v এ [মান[i], লেবেল[i]] সন্নিবেশ করান
  • v অ্যারে সাজান
  • উত্তর :=0, ব্যবহার করুন :=খালি মানচিত্র, এবং i :=0
  • যখন num_wanted এবং i এর দৈর্ঘ্য
  • যদি v[i, 1] ব্যবহার মানচিত্রে উপস্থিত না থাকে
    • সংখ্যা 1 দ্বারা কমিয়ে দিন
    • উত্তর :=উত্তর + v[i, 0]
    • ব্যবহার করুন[v[i, 1]] :=1
  • অন্য ব্যবহার[v[i, 1]]
  • সংখ্যা 1 দ্বারা কমিয়ে দিন
  • উত্তর :=উত্তর + v[i, 0]
  • 1 দ্বারা ব্যবহার [v[i, 1]] বাড়ান
  • i 1 দ্বারা বাড়ান
  • উত্তর ফেরত দিন
  • আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

    উদাহরণ

    class Solution(object):
       def largestValsFromLabels(self, values, labels, num_wanted, use_limit):
          v = []
          for i in range(len(values)):
             v.append([values[i],labels[i]])
          v = sorted(v,key = lambda v:v[0],reverse=True)
          ans = 0
          use = {}
          i = 0
          while num_wanted and i < len(v):
             if v[i][1] not in use:
                num_wanted -=1
                ans+=v[i][0]
                use[v[i][1]] = 1
             elif use[v[i][1]]<use_limit:
                num_wanted -=1
                ans+=v[i][0]
                use[v[i][1]]+=1
             i+=1
          return ans
    ob = Solution()
    print(ob.largestValsFromLabels([5,4,3,2,1],[1,1,2,2,3],3,1))

    ইনপুট

    [5,4,3,2,1]
    [1,1,2,2,3]
    3
    1

    আউটপুট

    9

    1. পাইথনের বৃহত্তম ত্রিভুজ এলাকা

    2. পাইথনে তালিকার অভিধান থেকে মান একত্রিত করা

    3. পাইথনে পাতার মান থেকে ন্যূনতম খরচ গাছ

    4. পাইথনে একটি স্ট্রিং থেকে পূর্ণসংখ্যার মান কিভাবে পেতে হয়?