leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
0462.cpp (625B)
0 class Solution {
1 public:
2 int minMoves2(vector<int> &nums) const {
3 int res = 0, i = 0, j = nums.size() - 1;
4 sort(begin(nums), end(nums));
5 while (i < j)
6 res += nums[j--] - nums[i++];
7 return res;
8 }
9 };
11 // Optimized solution
12 class Solution {
13 public:
14 int minMoves2(vector<int> &nums) const {
15 const int n = nums.size(), mid = n / 2;
16 nth_element(begin(nums), begin(nums) + mid, end(nums));
17 const int median = nums[mid];
18 int res = 0;
19 for (int i = 0; i < n; i++)
20 res += abs(nums[i] - median);
21 return res;
22 }
23 };