Given a binary array, find the maximum number of consecutive 1s in this array.
Example 1:
Input: [1,1,0,1,1,1]
Output: 3
Explanation: The first two digits or the last three digits are consecutive 1s.
The maximum number of consecutive 1s is 3.
Note:
The input array will only contain 0 and 1.
The length of input array is a positive integer and will not exceed 10,000
class Solution{
public:
int findMaxConsecutiveOnes(vector<int>& nums){
int res = 0, cnt = 0;
for(int num : nums){
cnt = (num == 0) ? 0 : cnt+1;
res = max(res,cnt);
}
return res;
}
};
class Solution2{
int findMaxConsecutiveOnes(vector<int>& nums){
int res = 0,sum = 0;
for(int num : nums){
sum = (sum + num)*num;
res = max(res,sum);
}
return res;
}
};
怕什么真理无穷,进一寸有一寸的欢喜。---胡适
浙公网安备 33010602011771号