We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 71997cc commit 0d60a2aCopy full SHA for 0d60a2a
C++/counting-elements.cpp
@@ -0,0 +1,34 @@
1
+// Time: O(n)
2
+// Space: O(n)
3
+
4
+class Solution {
5
+public:
6
+ int countElements(vector<int>& arr) {
7
+ unordered_set<int> lookup(cbegin(arr), cend(arr));
8
+ return count_if(cbegin(arr), cend(arr),
9
+ [&lookup](const auto& x) {
10
+ return lookup.count(x + 1);
11
+ });
12
+ }
13
+};
14
15
+// Time: O(nlogn)
16
+// Space: O(1)
17
+class Solution2 {
18
19
20
+ sort(begin(arr), end(arr));
21
+ int result = 0, l = 1;
22
+ for (int i = 0; i + 1 < arr.size(); ++i) {
23
+ if (arr[i] == arr[i + 1]) {
24
+ ++l;
25
+ continue;
26
27
+ if (arr[i] + 1 == arr[i + 1]) {
28
+ result += l;
29
30
+ l = 1;
31
32
+ return result;
33
34
0 commit comments