-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path977.cpp
More file actions
32 lines (30 loc) · 751 Bytes
/
977.cpp
File metadata and controls
32 lines (30 loc) · 751 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <vector>
using namespace std;
class Solution {
public:
vector<int> sortedSquares(vector<int>& nums) {
int front, end;
vector <int> out(nums.size());
front = 0;
end = nums.size() - 1;
int i = nums.size() - 1;
while (front <= end) {
if (nums[front] * nums[front] >= nums[end] * nums[end]) {
out[i--] = nums[front] * nums[front];
front++;
}
else {
out[i--] = nums[end] * nums[end];
end--;
}
}
return out;
}
};
int main() {
Solution solution;
vector <int> nums = { -3, -2, 0, 1,2 };
solution.sortedSquares(nums);
return 0;
}