Assessment Overview
The ByteDance OA is a 90-minute coding challenge featuring three algorithmic and mathematical problems. It tests your ability to solve complex problems efficiently with clean, logical code.

Question 1: Longest Subsequence with Bounded Adjacent Differences
Task
Given an integer list, find the maximum length of a subsequence where the absolute difference between consecutive elements is ≤ k
.
Example
Input: nums = [1, 3, 5, 7, 9]
, k = 2
Output: 5
Explanation: The entire list forms a valid subsequence since each adjacent pair differs by at most 2.
Question 2: Unique Paths to Bottom Row with Column Constraints
Task
A robot starts at the top-left corner (0, 0)
of a grid and can move down, left, or right (but not up). For n
steps, count the distinct paths that reach the bottom row, with each step landing in a new column.
Example
Input: n = 3
Output: 2
Explanation: The valid paths are (down → right → down)
and (down → left → down)
, each ensuring unique columns in every step.
Question 3: Largest Rectangle in Histogram
Task
Given a list of bar heights in a histogram (each with width 1), compute the maximum rectangular area that can be formed.
Example
Input: heights = [2, 1, 5, 6, 2, 3]
Output: 10
Explanation: The bars of heights 5 and 6 form a rectangle of height 5 (or 6) and width 2, yielding an area of 10.
Final Thoughts
The ByteDance OA demands a mix of problem-solving creativity and algorithmic efficiency. Mastering these high-frequency questions-along with their Mastering these high-frequency questions-along with their underlying patterns like dynamic programming for subsequences or stack-based approaches for histograms-will sharpen your readiness.
For personalized guidance, check out ProgramHelpReady to tackle the OA? Break it down, step by step, and let your code speak for itself! let your code speak for itself!