Problem · Dynamic Programming

Optimal Path in a Grid

Learn this problem
MediumMicrosoftINTERNOA
See Microsoft hiring insights

Problem statement

You are given two arrays, A and B, each made of N integers. They represent a grid with N columns and 2 rows, where A is the upper row and B is the lower row.

Your task is to go from the upper-left cell (represented by A[0]) to the bottom-right cell (represented by B[N-1]) moving only right and down, so that the maximum value over which you pass is as small as possible.

Given two arrays of integers, A and B, of length N, returns the maximum value on the optimal path.

Function

solution(A: int[], B: int[]) → int

Examples

Example 1

A = [3, 4, 6]B = [6, 5, 4]return = 5
Example 1 illustration

The optimal path is 3 → 4 → 5 → 4.

Example 2

A = [1, 2, 1, 1, 1, 4]B = [1, 1, 1, 3, 1, 1]return = 2
Example 2 illustration

Constraints

...

More Microsoft problems

drafts saved locally
public int solution(int[] A, int[] B) {
  // Write your code here
}
A[3, 4, 6]
B[6, 5, 4]
expected5
checking account