题解 | #手套#

手套

https://www.nowcoder.com/practice/365d5722fff640a0b6684391153e58d8

#include <climits>
class Gloves {
  public:
    int findMinimum(int n, vector<int> left, vector<int> right) {
        int left_sum = 0, left_min = INT_MAX;
        int right_sum = 0, right_min = INT_MAX;

        int sum = 0;
        for (int i = 0; i < n; ++i) {
            if (left[i]*right[i] == 0) {
                sum += left[i] + right[i];
            } else {
                left_sum += left[i];
                left_min = left_min < left[i] ? left_min : left[i];
                right_sum += right[i];
                right_min = right_min < right[i] ? right_min : right[i];
            }
        }
        return sum + min(right_sum - right_min+1, left_sum - left_min+1) + 1;
    }
};

全部评论

相关推荐

09-26 17:07
门头沟学院 Java
点赞 评论 收藏
分享
10-17 10:05
已编辑
北华大学 全栈开发
牛客872465272号:掉头发了哥
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务