carloscn / structstudy

Leetcode daily trainning by using C/C++/RUST programming.
4 stars 1 forks source link

leetcode2114: Maximum Number of Words Found in Sentences #341

Open carloscn opened 1 year ago

carloscn commented 1 year ago

Description

A sentence is a list of words that are separated by a single space with no leading or trailing spaces.

You are given an array of strings sentences, where each sentences[i] represents a single sentence.

Return the maximum number of words that appear in a single sentence.

Example 1:

Input: sentences = ["alice and bob love leetcode", "i think so too", "this is great thanks very much"] Output: 6 Explanation:

Example 2:

Input: sentences = ["please wait", "continue to fight", "continue to win"] Output: 3 Explanation: It is possible that multiple sentences contain the same number of words. In this example, the second and third sentences (underlined) have the same number of words.

Constraints:

1 <= sentences.length <= 100 1 <= sentences[i].length <= 100 sentences[i] consists only of lowercase English letters and ' ' only. sentences[i] does not have leading or trailing spaces. All the words in sentences[i] are separated by a single space.

carloscn commented 1 year ago

Analysis

pub fn most_words_found(sentences: Vec<&str>) -> i32
{
    let mut ret:i32 = 0;
    if sentences.len() < 1 {
        return ret;
    }

    let mut words_count:i32 = 0;

    for e in sentences {
        words_count = words_count.max(
            1 + e.chars().fold(0, |mut count, ch| {
                if ch == ' ' {
                    count += 1;
                }
                count
        } ));
    }

    ret = words_count;

    return ret;
}
carloscn commented 1 year ago

Code

https://review.gerrithub.io/c/carloscn/structstudy/+/1168812 https://github.com/carloscn/structstudy/commit/e7e746cfe8a116d56e5a918d59b65fe17a9bf73a