class Solution {
public:
vector<int> sortedSquares(vector<int>& nums) {
int k = nums.size() - 1;
vector<int> nums_new(nums.size());
int left = 0, right = nums.size() - 1;
while(left <= right) {
if(nums[left]*nums[left] > nums[right]*nums[right]) {
nums_new[k--] = nums[left]*nums[left];
left++;
} else {
nums_new[k--] = nums[right]*nums[right];
right--;
}
}
return nums_new;
}
};