Your question is Evaluate Feature Compatibility Across Versions. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Given a list of dependency versions (for example: [103.003.02, 103.003.03, 203.003.02]), write a program to evaluate feature compatibility/support across these versions.
Asked in the Technical Screening stage. 75-minute coding round conducted on an online editor platform with runnable test cases.
Implement evaluate_compatibility(versions, requirements).
versions is a list of version strings.requirements is a list of feature rules, each with feature, min_version, and optional max_version.Version strings may contain leading zeros and 2 to 4 dot-separated numeric parts. Compare versions numerically, padding missing parts with zeros.
def evaluate_compatibility(versions, requirements):