You are given a string s
, return the number of segments in the string.
A segment is defined to be a contiguous sequence of non-space characters.
Example 1:
Input: s = "Hello, my name is John" Output: 5 Explanation: The five segments are ["Hello,", "my", "name", "is", "John"]
Example 2:
Input: s = "Hello" Output: 1
Example 3:
Input: s = "love live! mu'sic forever" Output: 4
Example 4:
Input: s = "" Output: 0
Constraints:
0 <= s.length <= 300
s
consists of lower-case and upper-case English letters, digits or one of the following characters"!@#$%^&*()_+-=',.:"
.- The only space character in
s
is' '
.
class Solution:
def countSegments(self, s: str) -> int:
return len(s.split())
class Solution:
def countSegments(self, s: str) -> int:
res = 0
for i in range(len(s)):
if s[i] != ' ' and (i == 0 or s[i - 1] == ' '):
res += 1
return res
class Solution {
public int countSegments(String s) {
int res = 0;
for (String t : s.split(" ")) {
if (!"".equals(t)) {
++res;
}
}
return res;
}
}
class Solution {
public int countSegments(String s) {
int res = 0;
for (int i = 0; i < s.length(); ++i) {
if (s.charAt(i) != ' ' && (i == 0 || s.charAt(i - 1) == ' ')) {
++res;
}
}
return res;
}
}
class Solution {
public:
int countSegments(string s) {
int res = 0;
for (int i = 0; i < s.size(); ++i)
{
if (s[i] != ' ' && (i == 0 || s[i - 1] == ' '))
++res;
}
return res;
}
};
func countSegments(s string) int {
res := 0
for i, c := range s {
if c != ' ' && (i == 0 || s[i-1] == ' ') {
res++
}
}
return res
}