数字递增的<=N的数

int monotoneIncreasingDigits(int N) {
    // 将N的串表示从右往左不断将逆序波峰值减1,
    // 然后将最左逆序波峰后面的所有数字都变为9
    string s = to_string(N);
    int pos = s.size();
    for (int i = s.size() - 2; i >= 0; i--) {
        if (s[i] > s[i+1]) {
            s[i]--;
            pos = i;
        }
    }
    for (int i = pos + 1; i < s.size(); i++) {
        s[i] = '9';
    }
    return stoi(s);
}