কম্পিউটার

পাইথনে দ্বীপে বেঁচে থাকা সম্ভব কিনা তা পরীক্ষা করুন


ধরুন একটি দ্বীপ আছে। ঐ স্থানে একটি মাত্র দোকান আছে, এই দোকানটি রবিবার ছাড়া সবসময় খোলা থাকে। ইনপুট হিসাবে আমাদের নিম্নলিখিত মান রয়েছে −

  • N (সর্বোচ্চ সংখ্যক খাবার কেউ প্রতিদিন কিনতে পারে)।
  • S (কাউকে বেঁচে থাকার জন্য কত দিন প্রয়োজন)।
  • M (বেঁচে থাকার জন্য প্রতিদিন প্রয়োজনীয় খাবারের সংখ্যা)।

যদি এটি সোমবার হয়, এবং আমাদের পরবর্তী S সংখ্যার জন্য বেঁচে থাকতে হবে। আমাদের পরীক্ষা করতে হবে যে আমরা বেঁচে থাকতে পারি কি না, যদি আমরা ন্যূনতম কতগুলি দিন খুঁজে পেতে পারি যেগুলিতে আমাদের খাদ্য কিনতে হবে, যাতে আমরা পরবর্তী S সংখ্যক দিন বেঁচে থাকতে পারি।

সুতরাং, যদি ইনপুটটি S =12, N =24, M =3 এর মত হয়, তাহলে আউটপুট হবে True এবং ন্যূনতম 2 দিন যেগুলিতে আমাদের খাবার কিনতে হবে, কারণ আমরা 8 দিন বেঁচে থাকতে পারি (বর্তমান সোমবার থেকে পরের সোমবার পর্যন্ত) 24 ইউনিট খাবার ব্যবহার করে, তারপর পরবর্তী 4 দিনের জন্য আবার 12 ইউনিট কিনুন।

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

  • যদি (N * 6 6) বা M> N, তাহলে
    • মিথ্যে ফেরত দিন
  • অন্যথায়,
    • গণনা :=(M * S) / N
    • এর ভাগফল
    • যদি (M * S) N দ্বারা বিভাজ্য হয়, তাহলে
      • গণনা :=গণনা + 1
  • সত্য ফেরত দিন এবং গণনা করুন

উদাহরণ

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

def solve(S, N, M):
   if ((N * 6) < (M * 7) and S > 6) or M > N:
      return False
   else:
      count = (M * S) // N
      if ((M * S) % N) != 0:
         count += 1
      return (True, count)
S = 12
N = 24
M = 3
print(solve(S, N, M))

ইনপুট

12, 24, 3

আউটপুট

(True, 2)

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

  2. পাইথনে প্রদত্ত N থেকে একটি প্যালিনড্রোম স্ট্রিং তৈরি করা সম্ভব কিনা তা পরীক্ষা করুন

  3. পাইথন - অভিধান খালি কিনা তা পরীক্ষা করুন

  4. Python - একটি ভেরিয়েবল স্ট্রিং কিনা তা পরীক্ষা করুন