LeetCode 3279: Maximum Total Area Occupied by Pistons
Problem Description
Explanation:
To solve this problem, we can iterate through each piston and calculate the total area occupied by each possible pair of pistons. We will keep track of the maximum total area found so far and return it as the result.
Here are the steps:
- Sort the array of pistons in non-decreasing order.
- Initialize a variable
maxArea
to keep track of the maximum total area found so far. - Iterate through each pair of pistons, calculating the total area occupied by that pair.
- Update
maxArea
if the total area for the current pair is greater than the currentmaxArea
. - Return the
maxArea
as the result.
Time Complexity: O(n^2) where n is the number of pistons.
Space Complexity: O(1)
:
Solutions
class Solution {
public int maxTotalAreaOccupiedByPistons(int[] pistons) {
Arrays.sort(pistons);
int maxArea = 0;
for (int i = 0; i < pistons.length; i++) {
for (int j = i + 1; j < pistons.length; j++) {
int area = Math.min(pistons[i], pistons[j]) * (j - i + 1);
maxArea = Math.max(maxArea, area);
}
}
return maxArea;
}
}
Loading editor...