কম্পিউটার টিউটোরিয়াল

অ্যারে-এ m দৈর্ঘ্যের প্যাটার্ন k বা ততোধিকবার রিপিট হয়েছে কিনা যাচাই করা

একটি পজিটিভ মান দিয়ে nums অ্যারে দেওয়া আছে। m দৈর্ঘ্যের একটি প্যাটার্ন k বা ততোধিকবার রিপিট হয়েছে কিনা যাচাই করতে হবে। প্যাটার্ন = নন-ওভারল্যাপিং সাবঅ্যারে (কনসিকিউটিভ) যা একাধিকবার রিপিট হয়।

ইনপুট: nums = [3,5,1,4,3,1,4,3,1,4,3,9,6,1], m = 3, k = 2 → আউটপুট: True। প্যাটার্ন [1,4,3] ৩বার পাওয়া গেছে।

সমাধানের ধাপসমূহ

  • i = 0 থেকে len(nums)-1:

    • sub1 = nums[i : i + m*k]
    • sub2 = nums[i : i+m] * k (k বার রিপিট)
    • যদি sub1 == sub2: return True
  • return False

উদাহরণ (Python)

def solve(nums, m, k):
    for i in range(len(nums)):
        sub1 = nums[i:i+m*k]
        sub2 = nums[i:i+m] * k
        if sub1 == sub2:
            return True
    return False

nums = [3,5,1,4,3,1,4,3,1,4,3,9,6,1]
m = 3
k = 2
print(solve(nums, m, k))

ইনপুট

[3,5,1,4,3,1,4,3,1,4,3,9,6,1], 3, 2

আউটপুট

True
  1. পাইথনে হিপ লিস্ট ম্যাক্স হিপ কিনা চেক করা

  2. পাইথনে আনডিরেক্টেড গ্রাফে বিজোড় দৈর্ঘ্যের সাইকেল আছে কিনা যাচাই করার প্রোগ্রাম

  3. দেওয়া স্ট্রিংটি পাইথন কিওয়ার্ড কিনা চেক করার প্রোগ্রাম

  4. পাইথনে লিস্ট খালি কিনা যাচাই করার প্রোগ্রাম