কম্পিউটার

Python-এ দুটি বাক্য মিল আছে কি না তা পরীক্ষা করার জন্য প্রোগ্রাম


ধরুন আমাদের s এবং t দুটি বাক্য আছে। আমাদের পরীক্ষা করতে হবে যে তারা একই রকম কি না। এখানে বাক্যে শুধুমাত্র ইংরেজি অক্ষর আছে। দুটি বাক্যকে একই রকম বলা হয় যখন এই প্রদত্ত বাক্যের একটির ভিতরে একটি নির্বিচারে বাক্য (সম্ভবত খালি) যোগ করা সম্ভব হয় যাতে দুটি বাক্য সমান হয়ে যায়।

সুতরাং, যদি ইনপুটটি হয় s ="we live at city Kolkata" t ="city Kolkata", তাহলে আউটপুট হবে True কারণ আমরা "we live in" বাক্যটি যোগ করে t থেকে s পেতে পারি।

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

  • s1 :=s

    এ শব্দের একটি তালিকা
  • s2 :=t

    এ শব্দের একটি তালিকা
  • যদি s1 এর আকার> s2 এর আকার হয়, তাহলে

    • s1 এবং s2 অদলবদল করুন

  • যখন s1 খালি নয়, করুন

    • যদি s2[0] s1[0] এর মত হয়, তাহলে

      • s2

        থেকে প্রথম শব্দ মুছে দিন
      • s1

        থেকে প্রথম শব্দ মুছে দিন
    • অন্যথায় যখন s2-এর শেষ শব্দটি s1-এর শেষ শব্দের মতো হয়, তখন

      • s2

        থেকে শেষ শব্দটি মুছুন
      • s1

        থেকে শেষ শব্দটি মুছুন
    • অন্যথায়,

      • মিথ্যা ফেরত দিন

  • প্রত্যাবর্তন সত্য

উদাহরণ

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

def solve(s, t):
   s1 = s.split()
   s2 = t.split()
   if len(s1) > len(s2):
      s1,s2 = s2,s1
   while(s1):
      if(s2[0]==s1[0]):
         s2.pop(0)
         s1.pop(0)
      elif(s2[-1]==s1[-1]):
         s2.pop()
         s1.pop()
      else:
         return(False)
   return(True)

s = "we live at city Kolkata"
t = "city Kolkata"
print(solve(s, t))

ইনপুট

"we live at city Kolkata", "city Kolkata"

আউটপুট

True

  1. প্রদত্ত ব্লকের তালিকা x =y লাইনের উপরে প্রতিসম নাকি পাইথনে নয় তা পরীক্ষা করার জন্য প্রোগ্রাম

  2. পাতার ক্রম দুটি পাতার সমান নাকি পাইথনে নয় তা পরীক্ষা করার জন্য প্রোগ্রাম

  3. পাইথনে নোড অদলবদল করে দুটি গাছ তৈরি করা যায় কিনা তা পরীক্ষা করার জন্য প্রোগ্রাম

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