কম্পিউটার

পাইথনে আরেকটি স্ট্রিং তৈরি করতে একটি স্ট্রিং পুনরাবৃত্তি করা যায় কিনা তা পরীক্ষা করুন


ধরুন আমাদের দুটি স্ট্রিং s এবং t আছে, আমাদের খুঁজে বের করতে হবে কতবার স্ট্রিং s টি জেনারেট করতে পারে। যদি আমরা s ব্যবহার করে t তৈরি করতে না পারি, তাহলে -1 রিটার্ন করুন।

সুতরাং, যদি ইনপুট s ="tom" t ="tomtomtom" এর মত হয়, তাহলে আউটপুট হবে 3 কারণ আমরা "tomtomtom" পাওয়ার জন্য "tom" 3 বার সংযুক্ত করতে পারি।

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

  • যদি t এর আকার s এর আকার দ্বারা বিভাজ্য না হয়, তাহলে
    • রিটার্ন -1
  • cnt :=ভাগফল (t এর আকার / s এর আকার)
  • s :=s cnt সংখ্যক বার সংযুক্ত করুন
  • যদি s টি হয়, তাহলে
    • cnt ফেরত
  • রিটার্ন -1

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

উদাহরণ

def solve(s, t):
   if(len(t) % len(s) != 0):
      return -1;
   cnt = int(len(t) / len(s))
   s = s * cnt
   if(s == t):
      return cnt
   return -1
s = "tom"
t = "tomtomtom"
print(solve(s, t))

ইনপুট

"tom", "tomtomtom"

আউটপুট

3

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

  2. আমি কিভাবে একটি পাইথন ফাইল অন্য চালাতে পারি?

  3. পাইথনে একটি স্ট্রিংকে ফ্লোটে রূপান্তর করা যায় কিনা তা কীভাবে পরীক্ষা করবেন?

  4. পাইথনের অন্য স্ট্রিংয়ে একটি সাবস্ট্রিং রয়েছে কিনা তা কীভাবে পরীক্ষা করবেন