அல்கோரிதம்window shrinking

Window Shrinking — சாளர சுருக்கம்

TT
Testlaa Team
May 14, 20261 min read

சுருக்கம் — சாளரம் பருத்தது அல்லது செல்லாதது எனில் L முன்னேற்றி பழைய தரவை நீக்குதல்; R தொடர.

உண்மை உலகில் இது ஏன் முக்கியம்?

அழைப்பு மையம் — தீர்வில்லா டிக்கெட் அதிகமானால் நோக்கம் சுருக்கம். இடையக வெளியேற்றம் — நினைவு அழுத்தம்.

மையக் கருத்து (மாணவர்களுக்கான விளக்கம்)

while not valid: s[L] நீக்கு, L+=1. ஒவ்வொரு சுற்றிலும் L முன்னேற்றம்.

Pythonில் முயற்சி செய்வோம்

def shrink_to_sum_leq(nums: list[int], budget: int) -> int:
    s, L, best = 0, 0, 0
    for R, x in enumerate(nums):
        s += x
        while s > budget and L <= R:
            s -= nums[L]
            L += 1
        best = max(best, R - L + 1)
    return best


print(shrink_to_sum_leq([1, 2, 3, 4, 5], 7))

அடிக்கடி நேரும் தவறுகள்

  • இடது எழுத்து நீக்காமல் சுருக்கம்.
  • L>R வெற்று சாளரம்.

முக்கியச் சுருக்கக் குறிப்புகள்

  • தேவையில் ஒவ்வொரு R++ உடன் இறுக்கும் while.
  • பிழைப்பதிவு.

Tags:

Sliding windowPythonமாணவர்கள்