X DAYS

:

HOUR

:

MINS

:

SEC

Copied to Clipboard
Get Minimum Squares
Medium Accuracy: 54.5% Submissions: 9424 Points: 4

Given a number N. Find the minimum number of squares of any number that sums to N. For Example: If N = 100 , N can be expressed as (10*10) and also as (5*5 + 5*5 + 5*5 + 5*5) but the output will be 1 as minimum number of square is 1 , i.e (10*10).

Example 1:

Input: N = 100
Output: 1
Explanation: 10 * 10 = 100


Example 2:

Input: N = 6
Output: 3
Explanation = 1 * 1 + 1 * 1 + 2 * 2 = 6


You don't need to read or print anyhting. Your task is to complete the function MinSquares() which takes N as input parameter and returns minimum number of squares needed to make N.

Expcted Time Complexity: O(N * sqrt(N) )
Expected Space Complexity: O(N)

Constraints:
1 <= N <= 10000

We are replacing the old Disqus forum with the new Discussions section given below.

### Editorial

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

#### My Submissions:  