2024-03-02 Daily Challenge
Today I have done leetcode's March LeetCoding Challenge with cpp
.
March LeetCoding Challenge 2
Description
Squares of a Sorted Array
Given an integer array nums
sorted in non-decreasing order, return an array of the squares of each number sorted in non-decreasing order.
Example 1:
Input: nums = [-4,-1,0,3,10] Output: [0,1,9,16,100] Explanation: After squaring, the array becomes [16,1,0,9,100]. After sorting, it becomes [0,1,9,16,100].
Example 2:
Input: nums = [-7,-3,2,3,11] Output: [4,9,9,49,121]
Constraints:
1 <= nums.length <= 104
-104 <= nums[i] <= 104
nums
is sorted in non-decreasing order.
Follow up: Squaring each element and sorting the new array is very trivial, could you find an
O(n)
solution using a different approach?
Solution
auto speedup = [](){
cin.tie(nullptr);
cout.tie(nullptr);
ios::sync_with_stdio(false);
return 0;
}();
class Solution {
public:
vector<int> sortedSquares(vector<int>& nums) {
vector<int> answer;
answer.reserve(nums.size());
for(auto n : nums) {
answer.push_back(n * n);
}
sort(answer.begin(), answer.end());
return answer;
}
};
// Accepted
// 137/137 cases passed (28 ms)
// Your runtime beats 37.61 % of cpp submissions
// Your memory usage beats 28.9 % of cpp submissions (29.4 MB)