![]() |
||||||||||
|
||||||||||
数论大师Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1 Accepted Submission(s): 1 Problem Description 小F最近学习了狄雷克雷卷积,最近他遇上了一道难题,只好求助于你。作为数论大师的你,一定能轻松解决吧! 在此之前,小F复习了一下狄雷克雷卷积及其前置知识: 因子:如果整数A除B,得出结果是没有余数的整数,就称B是A的因子。 比如8的因子有1,2,4和8。如果A是B因子,记做A|B,例如4|12 公约数:指两个或多个整数的共有因子。例如4和12的共有因子有1,2,4;6和7的共有因子有1。 互质:如果两个数的公因数只有1,则称这两个数是互质的。例如4和7是互质的;6和12不是互质的,它们的共有因子除了1还有2和3。 数论函数: 在数论上,算术函数(或称数论函数)指定义域为正整数、陪域为复数的函数,每个算术函数都可视为复数的序列。 通俗地说,数论函数与普通函数基本一样,只是涉及的取值是在正整数范围内而已。 积性函数:对于数论函数f(n),若任意互质的数a,b,使得a*b=n,并且f(n)=f(a)*f(b),那么函数f(n)被称为积性函数。 这里列举几种常见的积性函数: 单位函数id(n)=n 元函数$\epsilon(n)$ = \begin{cases} 1 & n=1 \\ 0 & others \end{cases} 狄利克雷卷积: 定义函数f,g为数论函数,则他们的狄利克雷卷积可以表示为f*g, 设h=f*g,那么$h(n)=\sum_{d|n}f(d)g(\frac n d)$ $\sum{d|n}$表示这里枚举了所有n的因子。例如h(12)=f(1)g(12)+f(2)g(6)+f(3)g(4)+f(4)g(3)+f(6)g(2)+f(12)g(1) 那么问题来了,现在定义h=id*$\epsilon$,给你正整数n,要求输出h(n) 注:id(n)和$\epsilon(n)$的定义已在上文给出。 Input 本题有多组测试数据。第一行一个正整数T,表示测试组数。 接下来T行,每行给定一个正整数N。 Output 对每组测试数据,输出一行表示h(n) Sample Input
Sample Output
Hint 1<=T<=100,1<=N<=10^9 Source | ||||||||||
|