Skip to content

Commit 201944c

Browse files
committed
Oct22: Sliding window [E]
Time: O(N), Space: O(1)
1 parent 7373da0 commit 201944c

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

daily/Oct22.cc

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#include <iostream>
2+
using namespace std;
3+
4+
class Solution {
5+
public:
6+
/**
7+
* @brief LC3184: Count pairs that form a complete day I
8+
* Time: O(N) cause we use sliding window, Space: O(1)
9+
*
10+
* @param hours
11+
* @return int
12+
*/
13+
int countCompleteDayPairs(vector<int>& hours) {
14+
int len = hours.size();
15+
int le = 0, ri = le + 1;
16+
if (len == 1) return 0;
17+
int ans = 0;
18+
19+
while (le < len - 1) {
20+
if ((hours[le] + hours[ri]) % 24 == 0) {
21+
ans++;
22+
}
23+
24+
if (ri < len - 1) {
25+
ri++;
26+
} else {
27+
le++;
28+
ri = le + 1;
29+
}
30+
}
31+
32+
return ans;
33+
}
34+
};

0 commit comments

Comments
 (0)