unusual-blocks-6

Admin is provided with infinite supply of Unusual blocks and now he has being assigned the task to fill the rectangular floor(completely) of Area A  with one of these Unusual blocks.

The Property of Unusual Blocks being :-

Property 1 :- Both of it's dimensions are integers 

Property 2 :-  When both of it's dimensions are  even then they must be same.

Let say , the dimension of Unusual block can be 8X8 but not 8X4.

Help Admin to find how many different possible choices he has for a given area(A). 

Note: The block with mXn dimension is same as that of nXm, So they must be counted as one.

INPUT:

First line contains the number of test-cases T.(1 ≤ T ≤ 10^5)

Following "T" lines will contain a single integer A (1 ≤ A ≤ 10^5) .

OUTPUT:

Output the different possible choices in which he can choose a Unusual block size that will cover the exact area(A) for each test-case in separate line.

SAMPLE INPUT
1
4

SAMPLE OUTPUT
2

Explanation

The possible ways are  1x4  (or 4x1 , since both are same) and 2x2.

Source: hackerearth | Difficulty: UNKNOWN_DIFFICULTY


Solutions:
def perfectsquare(n):
	return n % n**0.5 == 0
for i in range(int(input())):
	a=int(input())
	c=a**0.5
	count1=1
	# count2=0
	# print c
	for i in range(2,int(c)+1):
		if(a%i==0 and (i%2!=0 or (a/i)%2!=0)):
			count1+=1				

	if(a%2==0 and perfectsquare(a)):
		print(count1+1)
	else:
		print(count1)