句子僅由小寫字母('a'
到'z'
)、數字('0'
到'9'
)、連字元('-'
)、標點符號('!'
、'.'
和','
)以及空格(' '
)組成。每個句子可以根據空格分解成乙個或者多個 token,這些 token 之間由乙個或者多個空格' '
分隔。
如果乙個 token 同時滿足下述條件,則認為這個 token 是乙個有效單詞:
這裡給出幾個有效單詞的例子:"a-b."
、"afad"
、"ba-c"
、"a!"
和"!"
。
給你乙個字串sentence
,請你找出並返回sentence
中有效單詞的數目。
示例 1:
輸入:sentence = "cat and dog"
輸出:3
解釋:句子中的有效單詞是 "cat"、"and" 和 "dog"
示例 2:
輸入:sentence = "!this 1-s b8d!"
輸出:0
解釋:句子中沒有有效單詞
"!this" 不是有效單詞,因為它以乙個標點開頭
"1-s" 和 "b8d" 也不是有效單詞,因為它們都包含數字
示例 3:
輸入:sentence = "alice and bob are playing stone-game10"
輸出:5
解釋:句子中的有效單詞是 "alice"、"and"、"bob"、"are" 和 "playing"
"stone-game10" 不是有效單詞,因為它含有數字
示例 4:
輸入:sentence = "he bought 2 pencils, 3 erasers, and 1 pencil-sharpener."
輸出:6
解釋:句子中的有效單詞是 "he"、"bought"、"pencils,"、"erasers,"、"and" 和 "pencil-sharpener."
#遍歷
func valid(s string) bool
if ch == '-'
hashyphens = true}}
return true
}func countvalidwords(sentence string) (ans int)
}return
}
#正規表示式
func countvalidwords(sentence string) (cnt int)
}return
}
Practice34 句子單詞的順序翻轉
牛客最近來了乙個新員工fish,每天早晨總是會拿著一本英文雜誌,寫些句子在本子上。同事cat對fish寫的內容頗感興趣,有一天他向fish借來翻看,但卻讀不懂它的意思。例如,student.a am i 後來才意識到,這傢伙原來把句子單詞的順序翻轉了,正確的句子應該是 i am a student....
演算法學習三 句子單詞反轉
題目要求 反轉句子中單詞的順序 題目 輸入乙個英文句子,反轉句子中單詞的順序,但單詞內字元的順序不變。句子中單詞以空格符隔開。為簡單起見,標點符號和普通字元一樣處理。例如輸入 i am a student.則輸出 student.a am i 此演算法可以結合棧的資料結構實現,分割每個單詞,乙個個放...
翻轉句子中單詞的順序
題目 輸入乙個英文句子,翻轉句子中單詞的順序,但單詞內字元的順序不變。句子中單詞以空格符隔開。為簡單起見,標點符號和普通字母一樣處理。例如輸入 i am a student.則輸出 student.a am i 分析 由於編寫字串相關 能夠反映程式設計師的程式設計能力和程式設計習慣,與字串相關的問題...