কম্পিউটার

পাইথন ব্যবহার করে অ্যারে সমান করতে ন্যূনতম অপারেশন খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের একটি মান n আছে, n উপাদান সহ একটি অ্যারে সংখ্যা বিবেচনা করুন, যেখানে arr[i] =(2*i)+1 সব i এর জন্য। এখন একটি অপারেশনে, আমরা x এবং y দুটি সূচক বেছে নিতে পারি যেখানে 0 <=x, y

সুতরাং, যদি ইনপুটটি n =4 এর মত হয়, তাহলে আউটপুট 4 হবে যেমন n অ্যারের জন্য [1,3,5,7], এখন প্রথম অপারেশনের পরে আমরা [2,3,5,6 এর মতো অ্যারে তৈরি করতে পারি। ], দ্বিতীয় অপারেশনের পরে আমরা [3,3,5,5], তারপর তৃতীয় [4,3,4,5] এবং অবশেষে [4,4,4,4] করতে পারি। তাই এখন সবাই সমান।

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

  • উত্তর:=0

  • যদি n 1 এর মত হয়, তাহলে

    • উত্তর ফেরত দিন

  • q:=(n/2) -1

    এর ভাগফল
  • j:=1

  • যখন q>=0, করবেন

    • ans:=ans + (n-j)

    • q :=q - 1

    • j :=j + 2

  • উত্তর ফেরত দিন

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

উদাহরণ

def solve(n):
   ans=0
   if n==1:
      return ans
   q=(n//2)-1
   j=1
   while q>=0:
      ans=ans+(n-j)
      q-=1
      j+=2
   return ans
n = 4
print(solve(n))

ইনপুট

4

আউটপুট

4

  1. পাইথন ব্যবহার করে একটি বাইনারি গ্রিড সাজানোর জন্য সর্বনিম্ন অদলবদল খুঁজে বের করার প্রোগ্রাম

  2. কঠোরভাবে তালিকা তৈরি করার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক অপারেশন খুঁজে বের করার জন্য প্রোগ্রাম পাইথনে বৃদ্ধি

  3. পাইথনে এক নম্বর থেকে অন্য নম্বর তৈরি করার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক অপারেশন খুঁজে বের করার প্রোগ্রাম

  4. পাইথনে একটি স্ট্রিং সাবস্ট্রিং অন্যটির জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক অপারেশন খুঁজে বের করার প্রোগ্রাম