DIVCNT3 - Counting Divisors (cube)

Let $\sigma_0(n)$ be the number of positive divisors of $n$.

For example, $\sigma_0(1) = 1$, $\sigma_0(2) = 2$ and $\sigma_0(6) = 4$.

Let $$S_3(n) = \sum _{i=1}^n \sigma_0(i^3).$$

Given $N$, find $S_3(N)$.

Input

First line contains $T$ ($1 \le T \le 10000$), the number of test cases.

Each of the next $T$ lines contains a single integer $N$. ($1 \le N \le 10^{11}$)

Output

For each number $N$, output a single line containing $S_3(N)$.

Example

Input

5
1
2
3
10
100

Output

1
5
9
73
2302

Explanation for Input

- $S_3(3) = \sigma_0(1^3) + \sigma_0(2^3) + \sigma_0(3^3) = 1 + 4 + 4 = 9$

Information

There are 5 Input files.

- Input #1: $1 \le N \le 10000$, TL = 1s.

- Input #2: $1 \le T \le 300,\ 1 \le N \le 10^{8}$, TL = 20s.

- Input #3: $1 \le T \le 75,\ 1 \le N \le 10^{9}$, TL = 20s.

- Input #4: $1 \le T \le 15,\ 1 \le N \le 10^{10}$, TL = 20s.

- Input #5: $1 \le T \le 2,\ 1 \le N \le 10^{11}$, TL = 20s.

My C++ solution runs in 7.1 sec. (total time)

Source Limit is 12 KB.


Added by:Min_25
Date:2014-06-29
Time limit:1s-20s
Source limit:12288B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64 GOSU

hide comments
2018-01-11 17:40:23 Min_25
@zimpha: Probably, my solution runs in $O(n^{2/3+\epsilon})$ time (and uses a similar formula as yours).

Your solution will run faster than mine if it uses "int64 u = nd / (a * a);" (or "int64 u = nd / (double)(a * a);") on line 74.

Last edit: 2018-01-11 17:58:20
2018-01-11 15:33:31 zimpha
@Min_25, what is the time complexity of your solution. I use an O(n^(2/3)) method, but I still cannot run as fast as you can.
2015-01-17 20:30:17 Abhay Pratap
compiler was running up to case 5, then showed time limit exceeded...does it means only case 5 is not in the time_limit?
2014-10-19 11:11:41 TURTLE
@Min_25- Please give some hints about the question. Its been a while and the question is yet unsolved! Thanks in advance.

--Min_25-->
The Dirichlet convolution is the key to DIVCNT2 <s>and DIVCNT3</s>.

Last edit: 2016-05-20 09:58:46
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.