# 273. Integer to English Words

Reference: LeetCode
Difficulty: Hard

## Problem

Convert a non-negative integer to its english words representation. Given input is guaranteed to be less than $2^{31} - 1$.

Note:

Example:

## Analysis

### Divide and Conquer

Consider write a function that calculates the number below 1000, which is used many places, e.g. 345 Billion.

Time: $O(N)$ where $N$ is the number of digits.
Space: $O(1)$ or $O(N)$ if we count the output String Builder.

Comment
Junhao Wang
a software engineering cat