কম্পিউটার

পাইথনে অ্যারে রিমুভাল গেমের বিজয়ী খোঁজার প্রোগ্রাম


ধরুন অমল এবং বিমল একটি গেম খেলছেন যেখানে তাদের কয়েকটি নম্বর সহ একটি অ্যারে এ রয়েছে৷ খেলার নিয়মগুলি নিম্নরূপ

  • বিমল সর্বদা শুরু করবে
  • প্রতিটি পালাক্রমে একজন প্লেয়ার অ্যারে থেকে সর্বাধিক উপাদান মুছে দেয় এবং মুছে ফেলা উপাদানটির ডানদিকে উপস্থিত অন্যান্য সমস্ত উপাদানও মুছে ফেলা হবে৷
  • তারা বিকল্পভাবে খেলে
  • যে খেলোয়াড় সমস্ত অবশিষ্ট উপাদানগুলি সরিয়ে ফেলবে, সে গেমটি জিতবে।

সুতরাং, যদি ইনপুটটি nums =[5,2,6,3,4] এর মত হয়, তাহলে আউটপুট হবে Amal কারণ প্রথমে বিমল [6,3,4] সরিয়ে দেবে তাই অ্যারে হবে [5,2], তাহলে অমল সব সরিয়ে দেবে, তাই সে বিজয়ী হবে।

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

  • সর্বোচ্চ :=-1
  • গণনা :=0
  • প্রতিটি a এর জন্য সংখ্যায়, করুন
    • যদি a> সর্বোচ্চ অ-শূন্য হয়, তাহলে
      • গণনা :=গণনা + 1
      • সর্বোচ্চ :=a
  • যদি কাউন্ট মোড 2 0 এর মত হয়, তাহলে
    • প্রত্যাবর্তন "আমল"
  • রিটার্ন "বিমল"

উদাহরণ

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

def solve(nums):
   maximum = -1
   count = 0
   for a in nums:
      if a > maximum:
         count += 1
         maximum = a
   if count % 2 == 0:
      return "Amal"
   return "Bimal"

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

ইনপুট

[5,2,6,3,4]

আউটপুট

Amal

  1. পাইথনে জেনারেটেড অ্যারেতে সর্বাধিক খোঁজার প্রোগ্রাম

  2. পাইথন প্রোগ্রামে অ্যারের সমষ্টি খুঁজুন

  3. অ্যারের যোগফল খুঁজে পেতে পাইথন প্রোগ্রাম

  4. একটি 2D অ্যারেতে k'th ক্ষুদ্রতম উপাদান খুঁজে পেতে পাইথন প্রোগ্রাম