আমরা চেক করতে চাই যে আমাদের স্ট্রিংটি কি এর সাবস্ট্রিং-এর পুনরাবৃত্তি দিয়ে গঠিত। এটি চেক করতে আমরা চেক করতে পারি যে স্ট্রিং-এর একটি রোটেশন দুইটি স্ট্রিং-এর কম্বিনেশনে একজিস্ট করে কিনা। কারণ একটি স্ট্রিং পিরিয়ডিক যদি এবং কেবল যদি সেটা নিজের একটি নন-ট্রivial রোটেশনের সমান হয়।
উদাহরণ
নিচের কোড এটি চেক করে এবং রিটার্ন করে:
def find_period(s):
# ২টি s কনক্যাটেনেট করে এবং সেটার মধ্যে s খুঁজুন
# ইনডেক্স ১ থেকে স্ট্রিং-এর শেষ পর্যন্ত
i = (s + s).find(s, 1, -1)
return None if i == -1 else s[:i]
print(find_period('012012012012012'))
print(find_period('some random string'))
আউটপুট
এটি আমাদের আউটপুট দেবে:
012 None