**Objective**: Given an integer check whether it is a perfect square.

**Example**:

number = 37 Output: false number = 49 Output: true

This is fun puzzle which is asked in the interview.

**Approach**:

- Say number is n.
- Start a loop from 1 to n/2.
- During iteration, for every integer ‘i’, calculate x = i*i.
- Now with this ‘x’ there are 3 possibilities.
- If x == n then n is a perfect square, return true
- If x > n then x has crossed the n, n is not perfect square. Return false
- If above step a or b are not true then continue.

Time Complexity: O(sqrt(n))

**Code**:

**Output**:

37 is square: false 49 is square: true

How about number 1? 1 is a perfect square. The above implementation will return false.