2496. Maximum Value of a String in an Array

Easy

The value of an alphanumeric string can be defined as:

  • The numeric representation of the string in base 10, if it comprises of digits only.

  • The length of the string, otherwise.

Given an array strs of alphanumeric strings, return the maximum value of any string in strs.

Example 1:

Input: strs = ["alic3","bob","3","4","00000"]
Output: 5
Explanation: 
- "alic3" consists of both letters and digits, so its value is its length, i.e. 5.
- "bob" consists only of letters, so its value is also its length, i.e. 3.
- "3" consists only of digits, so its value is its numeric equivalent, i.e. 3.
- "4" also consists only of digits, so its value is 4.
- "00000" consists only of digits, so its value is 0.
Hence, the maximum value is 5, of "alic3".

Example 2:

Input: strs = ["1","01","001","0001"]
Output: 1
Explanation: 
Each string in the array has value 1. Hence, we return 1.

Constraints:

  • 1 <= strs.length <= 100

  • 1 <= strs[i].length <= 9

  • strs[i] consists of only lowercase English letters and digits.

解題

只要有字元,使用 strconv.Atoi 就會有 error,透過這點判斷要將字串轉為 int 還是取其長度。

func maximumValue(strs []string) int {
    ans := 0 

    for _, str := range strs {
        if s, err := strconv.Atoi(str); err == nil {
		    if s > ans { ans = s}
	    } else {
            if len(str) > ans { ans = len(str)}
        }
    }

    return ans
}

Last updated