LeetCode Problem

How to Solve Smallest Good Base

The Smallest Good Base problem involves finding the smallest base k such that n, when represented in base k, consists entirely of 1's. This is achieved using binary search to efficiently explore possible values of k, reducing the problem's search space and leveraging mathematical relationships to pinpoint the correct base.

GhostInterview Help

Need help with Smallest Good Base without spending extra time grinding it?

GhostInterview can read Smallest Good Base from a screenshot, generate the answer path, explain the complexity, and support solver-first interview workflows when you need direct help fast.

Screenshot Input

Capture the prompt fast instead of rewriting the problem by hand.

Answer + Complexity

Get the solution path, trade-offs, and complexity summary in one pass.

Stealth Workflow

Stay outside captured layers on supported screen-share workflows.

Problem #483Binary search over the valid answer spaceReviewed 2026-03-08
Difficulty
Hard
Primary pattern
Binary search over the valid answer space
Answer-first problem summary
Step-by-step approach and complexity
GhostInterview solver workflow

The Smallest Good Base problem involves finding the smallest base k such that n, when represented in base k, consists entirely of 1's. This is achieved using binary search to efficiently explore possible values of k, reducing the problem's search space and leveraging mathematical relationships to pinpoint the correct base.

Problem Statement

Given an integer n represented as a string, return the smallest good base of n. A good base k is defined as a base where all digits of n in that base are 1's. Specifically, for a number n, we want to find the smallest k >= 2 such that when n is written in base k, the representation consists entirely of the digit '1'.

To solve this, we can utilize binary search to efficiently find the smallest valid base. The binary search works by determining the largest k where n can be represented as all 1's in base k. The solution requires understanding the mathematical properties of numbers in different bases and narrowing down the possible base k values.

Examples

Example 1

Input: n = "13"

Output: "3"

13 base 3 is 111.

Example 2

Input: n = "4681"

Output: "8"

4681 base 8 is 11111.

Example 3

Input: n = "1000000000000000000"

Output: "999999999999999999"

1000000000000000000 base 999999999999999999 is 11.

Constraints

  • n is an integer in the range [3, 1018].
  • n does not contain any leading zeros.

Solution Approach

Mathematical Insight

Understanding the mathematical formula behind the representation of n in base k helps us define the problem as finding k such that n = 1 + k + k^2 + ... + k^m, where m is the length of the representation in base k. This relationship allows us to identify the constraints for the possible values of k.

We perform binary search on k to find the smallest base that satisfies the condition. The search space for k is bounded between 2 and n-1. Each iteration of the binary search checks if a base k results in a valid representation of n, gradually narrowing down the potential values.

Efficiency Optimization

Using binary search over the range of possible k values reduces the time complexity significantly compared to a brute force approach. This ensures that even large values of n, up to 10^18, can be handled efficiently.

Complexity Analysis

MetricValue
TimeDepends on the final approach
SpaceDepends on the final approach

The time complexity of this approach is O(log n), where n is the given number, due to the binary search over the possible base k values. The space complexity is O(1), as only a constant amount of extra space is used for storing variables during the search process.

What Interviewers Usually Probe

  • Look for understanding of mathematical relationships between number representations in different bases.
  • Ensure the candidate can explain why binary search is applied and how it reduces the problem's complexity.
  • Gauge how well the candidate can handle large inputs and optimize the solution for efficiency.

Common Pitfalls or Variants

Common pitfalls

  • Confusing the problem with simpler base conversion problems, missing the requirement for all digits to be 1.
  • Improperly implementing the binary search, such as not properly narrowing the search range for k.
  • Misunderstanding the relationship between n and k, leading to incorrect base calculations or premature exits in the search process.

Follow-up variants

  • Given a range of values for n, find the smallest good base for each value using the same binary search method.
  • Extend the problem to return the base k for multiple values of n in sequence while maintaining efficiency.
  • Consider a problem where the base k must be larger than a specific value, adding an extra constraint to the search.

How GhostInterview Helps

  • GhostInterview provides a clear breakdown of the binary search technique and the underlying mathematical properties necessary to solve the Smallest Good Base problem.
  • The solver guides the user step-by-step, helping them understand the importance of efficiently narrowing down the range of k values and avoiding brute force methods.
  • GhostInterview’s problem-solving approach allows candidates to develop a structured solution, helping them communicate their thought process clearly during interviews.

Topic Pages

FAQ

What is the time complexity of the Smallest Good Base problem?

The time complexity is O(log n) due to the binary search over the possible base values k.

How can I optimize my solution for the Smallest Good Base problem?

By using binary search, you can optimize the solution to efficiently find the smallest base without checking every possible value.

What is a 'good base' in the context of this problem?

A good base is one where the number n, when represented in that base, consists entirely of 1's.

Can you explain how binary search is applied in the Smallest Good Base problem?

Binary search is used to find the smallest base k such that n can be represented as all 1's in base k. The search range is between 2 and n-1, and each iteration checks the validity of the base.

What are common mistakes when solving the Smallest Good Base problem?

Common mistakes include misinterpreting the mathematical relationship between n and k, or failing to implement the binary search correctly, which may lead to incorrect answers or inefficient solutions.

GhostInterview Solver

Need direct help with Smallest Good Base instead of spending more time grinding it?

Download GhostInterview when you want a LeetCode solver, not another long practice loop. Capture Smallest Good Base from a screenshot, get the answer path and complexity, and use supported stealth workflows that stay outside captured layers.

Screenshot Input

Capture the prompt fast instead of rewriting the problem by hand.

Answer + Complexity

Get the solution path, trade-offs, and complexity summary in one pass.

Stealth Workflow

Stay outside captured layers on supported screen-share workflows.