def get_Min_Squares(n):
    
    if n <= 3:
        return n;
    res = n 
    for x in range(1,n + 1):
        temp = x * x;
        if temp > n:
            break
        else:
            res = min(res,1 + get_Min_Squares(n  - temp)) 
    return res;
def get_Min_Squares(VAR_0):
    if VAR_0 <= 3:
        return VAR_0
    res = VAR_0
    for x in range(1, VAR_0 + 1):
       
        temp = x * x
        if temp > VAR_0:
            break
        else:
            res = min(res, 1 + get_Min_Squares(VAR_0 - temp))
    return res