Largest Odd Number in String

easy string greedy

Problem

Given a digit-only string num, return the largest substring that represents an odd number, or "" if none.

Inputnum = "35427"
Output"35427"
Last digit 7 is odd, so the whole string qualifies.

def largest_odd_number(num):
    for i in range(len(num) - 1, -1, -1):
        if int(num[i]) % 2 == 1:
            return num[:i + 1]
    return ''
function largestOddNumber(num) {
  for (let i = num.length - 1; i >= 0; i--) {
    if ((num.charCodeAt(i) - 48) % 2 === 1) return num.slice(0, i + 1);
  }
  return '';
}
class Solution {
    public String largestOddNumber(String num) {
        for (int i = num.length() - 1; i >= 0; i--) {
            if ((num.charAt(i) - '0') % 2 == 1) return num.substring(0, i + 1);
        }
        return "";
    }
}
string largestOddNumber(string num) {
    for (int i = (int)num.size() - 1; i >= 0; i--) {
        if ((num[i] - '0') % 2 == 1) return num.substr(0, i + 1);
    }
    return "";
}
Time: O(n) Space: O(1)