2918. 数组的最小相等和
题目链接:2918. 数组的最小相等和
代码如下:
class Solution {
public:long long minSum(vector<int>& nums1, vector<int>& nums2) {auto [sum1, zero1] = calc(nums1);auto [sum2, zero2] = calc(nums2);if((!zero1&&sum1<sum2)||(!zero2&&sum2<sum1)){return -1;}return max(sum1, sum2);}private:pair<long long, bool> calc(vector<int>& nums) {long long sum = 0;bool zero = false;for (auto& num : nums) {if (num == 0) {sum++;zero = true;}else {sum += num;}}return pair{ sum, zero };}
};