কম্পিউটার

পাইথনে এটি ঘোরানোর পরে অ্যারে সাজানো সম্ভব কিনা তা পরীক্ষা করুন


ধরুন আমাদের কাছে সংখ্যা নামক সংখ্যার একটি তালিকা আছে, আমাদের পরীক্ষা করতে হবে যে আমরা ঘূর্ণন ব্যবহার করে সংখ্যাগুলি সাজাতে পারি কি না। ঘূর্ণনের মাধ্যমে আমরা সংখ্যার শেষ থেকে কিছু সংলগ্ন উপাদান স্থানান্তর করতে পারি এবং এটিকে অ্যারের সামনে রাখতে পারি।

সুতরাং, যদি ইনপুটটি nums =[4,5,6,1,2,3] এর মত হয়, তাহলে আউটপুটটি True হবে কারণ আমরা শেষ তিনটি উপাদান ঘোরানোর মাধ্যমে সাজাতে পারি এবং সেগুলিকে প্রথমটিতে ফেরত পাঠাতে পারি।

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

  • n :=সংখ্যার আকার
  • যদি সংখ্যাগুলি সাজানো হয়, তাহলে
    • সত্য ফেরান
  • অন্যথায়,
    • স্থিতি :=সত্য
    • আমি 0 থেকে n - 2 রেঞ্জের জন্য, কর
      • যদি nums[i]> nums[i + 1], তারপর
        • লুপ থেকে বেরিয়ে আসুন
    • i :=i + 1
    • i থেকে n - 2 রেঞ্জের k-এর জন্য
    • করুন
      • যদি nums[k]> nums[k + 1], তারপর
        • স্থিতি :=মিথ্যা
        • লুপ থেকে বেরিয়ে আসুন
    • যদি স্ট্যাটাস মিথ্যা হয়, তাহলে
      • মিথ্যে ফেরত দিন
    • অন্যথায়,
      • যদি nums[n - 1] <=nums[0], তারপর
        • সত্য ফেরান
      • মিথ্যে ফেরত দিন

উদাহরণ

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

def solve(nums):
   n = len(nums)
   if all(nums[i] <= nums[i + 1] for i in range(len(nums) - 1)):
      return True
   else :
      status = True
      for i in range(n - 1) :
         if nums[i] > nums[i + 1] :
            break
      i += 1
      for k in range(i, n - 1) :
         if nums[k] > nums[k + 1]:
            status = False
            break
      if not status:
         return False
      else :
         if nums[n - 1] <= nums[0]:
            return True
         return False
nums = [4,5,6,1,2,3]
print(solve(nums))

ইনপুট

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

আউটপুট

True

  1. পাইথন প্রোগ্রাম একটি অ্যারের উপাদানকে অবরোহ ক্রমে সাজাতে

  2. পাইথন প্রোগ্রাম একটি অ্যারের উপাদানকে আরোহী ক্রমে সাজাতে

  3. পাইথনে অনুমোদিত সন্নিহিত এর শর্তসাপেক্ষ অদলবদল সহ একটি অ্যারে সাজানো সম্ভব কিনা তা পরীক্ষা করুন

  4. পাইথনে ভেক্টর এ ঘুরিয়ে এবং ভেক্টর সি যোগ করে ভেক্টর বি-তে পৌঁছানো সম্ভব কিনা তা পরীক্ষা করুন