FastPrepFastPrep
Problem Brief

Biggest Number From Digits

OA

There is an array, named 'digits', consisting of N digits. Choose at most three digits (not necessarily adjacent) and merge them into a new integer without changing the order of the digits. What is the biggest number that can be obtained this way?

Write a function:

biggestNumberFromDigits

that, given an array of N digits, returns the biggest number that can be built.

Examples:

  1. Given digits = [7, 2, 3, 3, 4, 9], the function should return 749.
  2. Given digits = [0, 0, 5, 7], the function should return 57.

Assume that:

  • N is an integer within the range [3..50];
  • each element of array named 'digits', is an integer within the range [0..9].

In your solution, focus on correctness. The performance of your solution will not be the focus of the assessment.

Memo 🐌 On the source image it says the question is an "exercise", I've never done Google assessment before, so I am not sure if it is just a warm up exercie before the actual test.

1Example 1

Input
digits = [7, 2, 3, 3, 4, 9]
Output
749
Explanation
The biggest number that can be built by choosing at most three digits is 749.

2Example 2

Input
digits = [0, 0, 5, 7]
Output
57
Explanation
The biggest number that can be built by choosing at most three digits is 57.

Constraints

Limits and guarantees your solution can rely on.

  • N is an integer within the range [3..50].
  • Each element of array named 'digits', is an integer within the range [0..9].
public int biggestNumberFromDigits(int[] digits) {
  // write your code here
}
Input

digits

[7, 2, 3, 3, 4, 9]

Output

749

Sign in to submit your solution.