কম্পিউটার

পাইথনে কিছু অপারেশন করে অন্তত অর্ধেক অ্যারে শূন্যে কমানো যায় কিনা তা পরীক্ষা করুন


ধরুন, আমাদেরকে n আকারের একটি তালিকা দেওয়া হয়েছে যাতে রয়েছে ধনাত্মক পূর্ণসংখ্যা এবং আরেকটি ধনাত্মক পূর্ণসংখ্যা m। ধরা যাক, আমরা বর্তমানে একটি লুপের ভিতরে আছি এবং প্রতিটি পুনরাবৃত্তিতে, আমরা অ্যারের কিছু উপাদানের মান 1 দ্বারা হ্রাস করি এবং অবশিষ্ট উপাদানগুলির মান m দ্বারা বৃদ্ধি করি। তালিকার অর্ধেক বা তার বেশি উপাদান কিছু পুনরাবৃত্তির পরে শূন্যে পরিণত হয় কিনা তা আমাদের খুঁজে বের করতে হবে। আমরা সম্ভব হলে সত্য ফেরত দিই, আর না হলে মিথ্যা।

সুতরাং, যদি ইনপুটটি হয় input_list =[10, 18, 35, 5, 12], m =4, তাহলে আউটপুট হবে True।

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

  • frequency_list :=m+1 আকারের একটি নতুন তালিকা 0 দিয়ে আরম্ভ করা হয়েছে
  • i :=0
  • যখন আমি <ইনপুট_লিস্টের আকার, কর
    • ফ্রিকোয়েন্সি_লিস্ট[ইনপুট_লিস্ট[i] মোড(মি + 1)] :=

      ফ্রিকোয়েন্সি_লিস্ট[ইনপুট_লিস্ট[i] মোড (মি + 1) ] + 1

    • i :=i + 1
  • i :=0
  • যখন i <=m, do
    • যদি ফ্রিকোয়েন্সি_লিস্ট[i]>=(ইনপুট_লিস্টের আকার / 2), তারপর
      • লুপ থেকে বেরিয়ে আসুন
    • i :=i + 1
  • যদি i <=m, তাহলে
    • সত্য ফেরান
  • অন্যথায়,
    • মিথ্যে ফেরত দিন

উদাহরণ

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

def সমাধান(input_list, m):ফ্রিকোয়েন্সি_লিস্ট =[0] * (m + 1) i =0 while(i =(len(input_list)/ 2)):break i +=1 if (i <=m):রিটার্ন অন্য সত্য:Falseinput_list =[10, 18, 35, 5, 12]প্রিন্ট(সল্ভ(ইনপুট_লিস্ট, 4)) ফেরত দিন

ইনপুট

<প্রে>[10, 18, 35, 5, 12], 4

আউটপুট

সত্য

  1. পাইথনের একটি অ্যারেতে k আকারের প্রতিটি সেগমেন্টে একটি কী উপস্থিত আছে কিনা তা পরীক্ষা করুন

  2. পাইথনে প্রদত্ত ক্রিয়াকলাপ সম্পাদন করার পরে শূন্যে হ্রাস করা সর্বশেষ সূচকটি সন্ধান করুন

  3. পাইথনের একটি সাজানো অ্যারেতে একটি সংখ্যা সংখ্যাগরিষ্ঠ উপাদান কিনা তা পরীক্ষা করুন

  4. প্রদত্ত অ্যারেটি মনোটোনিক কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম