#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;
}
};