Class Solution
-
- All Implemented Interfaces:
public final class Solution3606 - Coupon Code Validator.
Easy
You are given three arrays of length
nthat describe the properties ofncoupons:code,businessLine, andisActive. The <code>i<sup>th</sup></code> coupon has:code[i]: a string representing the coupon identifier.businessLine[i]: a string denoting the business category of the coupon.isActive[i]: a boolean indicating whether the coupon is currently active.
A coupon is considered valid if all of the following conditions hold:
code[i]is non-empty and consists only of alphanumeric characters (a-z, A-Z, 0-9) and underscores (_).businessLine[i]is one of the following four categories:"electronics","grocery","pharmacy","restaurant".isActive[i]is true.
Return an array of the codes of all valid coupons, sorted first by their businessLine in the order:
"electronics","grocery","pharmacy", "restaurant", and then by code in lexicographical (ascending) order within each category.Example 1:
Input: code = "SAVE20","","PHARMA5","SAVE@20", businessLine = "restaurant","grocery","pharmacy","restaurant", isActive = true,true,true,true
Output: "PHARMA5","SAVE20"
Explanation:
First coupon is valid.
Second coupon has empty code (invalid).
Third coupon is valid.
Fourth coupon has special character
@(invalid).
Example 2:
Input: code = "GROCERY15","ELECTRONICS\_50","DISCOUNT10", businessLine = "grocery","electronics","invalid", isActive = false,true,true
Output: "ELECTRONICS\_50"
Explanation:
First coupon is inactive (invalid).
Second coupon is valid.
Third coupon has invalid business line (invalid).
Constraints:
n == code.length == businessLine.length == isActive.length1 <= n <= 1000 <= code[i].length, businessLine[i].length <= 100code[i]andbusinessLine[i]consist of printable ASCII characters.isActive[i]is eithertrueorfalse.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final List<String>validateCoupons(Array<String> code, Array<String> businessLine, BooleanArray isActive)-
-
Method Detail
-
validateCoupons
final List<String> validateCoupons(Array<String> code, Array<String> businessLine, BooleanArray isActive)
-
-
-
-