Skip to content

Commit 45800a0

Browse files
authored
Create max-consecutive-ones-iii.cpp
1 parent eae1871 commit 45800a0

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

C++/max-consecutive-ones-iii.cpp

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
// Time: O(n)
2+
// Space: O(1)
3+
4+
class Solution {
5+
public:
6+
int longestOnes(vector<int>& A, int K) {
7+
int result = 0, i = 0;
8+
for (int j = 0; j < A.size(); ++j) {
9+
K -= (A[j] == 0) ? 1 : 0;
10+
while (K < 0) {
11+
K += (A[i] == 0) ? 1 : 0;
12+
++i;
13+
}
14+
result = max(result, j - i + 1);
15+
}
16+
return result;
17+
}
18+
};

0 commit comments

Comments
 (0)