Each shipment scenario has a list of truck capacities and a list of package weights.
A truck may deliver any package whose weight does not exceed its current capacity. After a successful delivery, that truck's capacity becomes floor(capacity / 2). Determine whether every package in each scenario can be delivered using the available trucks.
Return an int[] where each entry is 1 if the corresponding scenario is feasible and 0 otherwise.
Examples
01 · Example 1
truckCapacities = [[7]] packageWeights = [[4, 3]] return = [1]
The single truck delivers package 4, its capacity drops to 3, and it can still deliver package 3. The scenario is feasible.
Constraints
The number of scenarios and the lengths of the nested arrays can be large, so the solution should avoid brute-force backtracking over all assignments.
More Amazon problems
- Count Promotional PeriodsOA · Seen Jun 2026
- Find Maximum Total Amount (SDE I, Fungible :)Seen Jun 2026
- Get Minimum AmountOA · Seen Jun 2026
- Find Minimum CostOA · Seen Jun 2026
- Get Smallest Base SegmentOA · Seen Jun 2026
- Maximum Non-Adjacent House ValueONSITE INTERVIEW · Seen Jun 2026
- Running Delivery Time MediansONSITE INTERVIEW · Seen Jun 2026
- Select Least Resource TasksOA · Seen Jun 2026
public int[] canDeliverAllPackages(int[][] truckCapacities, int[][] packageWeights) {
// write your code here
}
truckCapacities[[7]]
packageWeights[[4, 3]]
expected[1]
sign in to submit