কম্পিউটার টিউটোরিয়াল

পাইথনে কোয়েরি után জোড় সংখ্যাগুলোর যোগফল

এই সমস্যায় একটি পূর্ণসংখ্যার অ্যারে A এবং একটি কোয়েরি অ্যারে দেওয়া থাকে। প্রতিটি কোয়েরির জন্য value = queries[i][0] এবং index = queries[i][1], আমরা A[index]-এ value যোগ করব। তারপর সেই কোয়েরির উত্তর হবে অ্যারে A-তে থাকা সব জোড় সংখ্যার যোগফল। আমাদের সব কোয়েরির উত্তর একটি অ্যারে হিসেবে রিটার্ন করতে হবে।

উদাহরণস্বরূপ, যদি অ্যারে হয় [1,2,3,4] এবং কোয়েরি অ্যারে হয় [[1,0],[-3,1],[-4,0],[2,3]], তখন উত্তর অ্যারে হবে [8,6,2,4]।

সমাধানের পদ্ধতি

  1. ফলাফল সংরক্ষণের জন্য res নামক একটি অ্যারে তৈরি করুন।
  2. sum = 0 নিয়ে শুরু করুন।
  3. A-এর প্রতিটি উপাদান i এর জন্য:
    • যদি i জোড় হয়, তবে sum = sum + i।
  4. প্রতিটি কোয়ারি i এর জন্য:
    • index = i[1] এবং val = i[0] নিন।
    • যদি A[index] জোড় হয়, তবে sum = sum - A[index]।
    • A[index] = A[index] + val আপডেট করুন।
    • যদি নতুন A[index] জোড় হয়, তবে sum = sum + A[index]।
    • sum-কে res-এ যুক্ত করুন।
  5. res রিটার্ন করুন।

উদাহরণ কোড

class Solution(object):
    def sumEvenAfterQueries(self, A, queries):
        result = []
        sum = 0
        for i in A:
            if i % 2 == 0:
                sum += i
        for i in queries:
            index = i[1]
            val = i[0]
            if A[index] % 2 == 0:
                sum -= A[index]
            A[index] += val
            if A[index] % 2 == 0:
                sum += A[index]
            result.append(sum)
        return result

ob1 = Solution()
print(ob1.sumEvenAfterQueries([1,2,3,4], [[1,0],[-3,1],[-4,0],[2,3]]))

ইনপুট

[1,2,3,4] [[1,0],[-3,1],[-4,0],[2,3]]

আউটপুট

[8,6,2,4]
  1. একটি সংখ্যার সম ফ্যাক্টরের যোগফল বের করার পাইথন প্রোগ্রাম

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

  3. পাইথনে কমপ্লেক্স নম্বর

  4. Python-এ সংখ্যাগুলোর লিস্টের যোগফল (Sum) বের করা