Steward
分享是一種喜悅、更是一種幸福
程式語言 - LeetCode - C++ - 2033. Minimum Operations to Make a Uni-Value Grid
題目:

解答:
class Solution {
public:
int minOperations(vector<vector<int>>& grid, int x) {
vector<int> num;
for (auto r : grid) {
for (int n : r) {
num.push_back(n);
}
}
int mod = num[0] % x;
for (int n : num) {
if (n % x != mod) {
return -1;
}
}
sort(num.begin(), num.end());
int ans = 0;
int m = num[num.size() >> 1];
for (int n : num) {
ans += abs(m - n) / x;
}
return ans;
}
};