Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Solving a Medium DSA Problem
00:00
5 left

Solving a Medium DSA Problem

MediumPython

Problem

Cloud Security Services groups consecutive security alerts into investigation windows. Given an array of alert type identifiers and an integer k, return the maximum length of a contiguous sequence containing at most k distinct alert types.

Use a sliding-window technique that expands the right boundary and moves the left boundary whenever the window becomes invalid.

Formal Specification

Implement longest_alert_window(alerts, k).

  • Input: alerts, a list of integers representing alert types, and k, a non-negative integer.
  • Output: An integer representing the maximum length of a contiguous subarray with at most k distinct values.
  • Return 0 when alerts is empty or k is 0.

Constraints

  • 0 <= alerts.length <= 100000
  • 0 <= alerts[i] <= 1000000000
  • 0 <= k <= alerts.length

Function Signature

def longest_alert_window(alerts, k):
Interviewer

Your question is Solving a Medium DSA Problem. Start with the requirements in the Question tab.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.
CodePython 3
You need to log in / sign up to run or submit.Ln 2
Run your code to see test output here.