Skip to main content
Back to problems
#2042
Easy Algorithms

Check if numbers are ascending in a sentence

String
72.9% acceptance
Feb 25, 2026
695
24
A sentence is a list of tokens separated by a single space with no leading or trailing spaces. Every token is either a positive number consisting of digits 0-9 with no leading zeros, or a word consisting of lowercase English letters. For example, "a puppy has 2 eyes 4 legs" is a sentence with seven tokens: "2" and "4" are numbers and the other tokens such as "puppy" are words. Given a string s representing a sentence, you need to check if all the numbers in s are strictly increasing from left to right (i.e., other than the last number, each number is strictly smaller than the number on its right in s). Return true if so, or false otherwise.

Solution

Rust
Time O(n)
Space O(1)
LeetCode
solution.rs
impl Solution {
  pub fn are_numbers_ascending(s: String) -> bool {
    let mut prev = -1i64;
    for token in s.split_whitespace() {
      if token.chars().all(|c| c.is_ascii_digit()) {
        let num: i64 = token.parse().unwrap();
        if num <= prev {
          return false;
        }
        prev = num;
      }
    }
    true
  }
}