#include<stdio.h>
#include<string.h>
int main()
{
int cas,n;
scanf("%d",&cas);
while(cas--)
{
scanf("%d",&n);
int ans=1;
for(int i=2;i*i<=n;i++)
if(n%i==0)
{
int cnt=0;
while(n%i==0)
{
cnt++;
n/=i;
}
int t=(1+cnt+1)*(cnt+1)/2;
ans*=t*t;
}
if(n>1) ans*=9;
printf("%d\n",ans);
}
return 0;
}
本文详细介绍了POJ 3604 Professor Ben问题的解题策略,并提供了C语言代码实现。通过分析题目特点,采用质因数分解的方法求解,最终得到优化的解决方案。
3355

被折叠的 条评论
为什么被折叠?



