Easy
You are given two arrays of integers, fruits
and baskets
, each of length n
, where fruits[i]
represents the quantity of the ith
type of fruit, and baskets[j]
represents the capacity of the jth
basket.
From left to right, place the fruits according to these rules:
Return the number of fruit types that remain unplaced after all possible allocations are made.
Example 1:
Input: fruits = [4,2,5], baskets = [3,5,4]
Output: 1
Explanation:
fruits[0] = 4
is placed in baskets[1] = 5
.fruits[1] = 2
is placed in baskets[0] = 3
.fruits[2] = 5
cannot be placed in baskets[2] = 4
.Since one fruit type remains unplaced, we return 1.
Example 2:
Input: fruits = [3,6,1], baskets = [6,4,7]
Output: 0
Explanation:
fruits[0] = 3
is placed in baskets[0] = 6
.fruits[1] = 6
cannot be placed in baskets[1] = 4
(insufficient capacity) but can be placed in the next available basket, baskets[2] = 7
.fruits[2] = 1
is placed in baskets[1] = 4
.Since all fruits are successfully placed, we return 0.
Constraints:
n == fruits.length == baskets.length
1 <= n <= 100
1 <= fruits[i], baskets[i] <= 1000
public class Solution {
public int numOfUnplacedFruits(int[] fruits, int[] baskets) {
int n = fruits.length;
int currfruits;
int count = 0;
for (int i = 0; i < n; i++) {
currfruits = fruits[i];
for (int j = 0; j < n; j++) {
if (baskets[j] >= currfruits) {
count++;
baskets[j] = 0;
break;
}
}
}
return n - count;
}
}