Problem · Sorting

Maximum Stability

MediumAmazonFULLTIMEOA
See Amazon hiring insights

AWS provides a range of servers to meet the deployment needs of its clients. A client wants to choose a set of servers to deploy their application. Each server is associated with an availability factor and a reliability factor.

The client defines the stability of a set of servers as the minimum availability amongst the servers multiplied by the sum of reliabilities of all the servers. Given two arrays of integers, availability, and reliability, where the availability[i] and reliability[i] represent the availability and reliability factors of the ith server, find the maximum possible stability of any subset of servers.

Since the answer can be large, report the answer modulo (10^9 + 7).

Function Description

Complete the function maximumStability in the editor.

maximumStability has the following parameters:

  1. 1. int reliability[n]: an array of integers
  2. 2. int availability[n]: an array of integers

Returns

int: the maximum stability above among all possible non-empty subsets, modulo (10^9+7)

Examples
01 · Example 1
reliability = [1, 2, 2]
availability = [1, 1, 3]
return = 6
Example 1 illustration
The possible subsets of servers are: So the answer is maximum stability for the set of index [2], answer = 6 % 1000000007 = 6.
Constraints
  • 1 ≤ n ≤ 10^5
  • 1 ≤ reliability[i], availability[i] ≤ 10^6
  • It is guaranteed that lengths of reliability and availability are the same.
More Amazon problems
drafts saved locally
public int maximumStability(int[] reliability, int[] availability) {
  // write your code here
}
reliability[1, 2, 2]
availability[1, 1, 3]
expected6
sign in to submit