Pagini recente » Cod sursa (job #2333248) | Cod sursa (job #3266529) | Cod sursa (job #534208) | Cod sursa (job #502365) | Cod sursa (job #1868915)
#include <fstream>
#include <bitset>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int t,p[500000],i,j,k,e,nd;
bitset<1000010>b;
long long sc,sd,n,pc;
int main()
{
f>>t;
k=1;
p[k]=2;
for(i=3; i<=1000; i+=2)
if(b[i]==0)
{
k++;
p[k]=i;
for(j=i*i; j<=1000000; j+=2*i)
b[j]=1;
}
for(; i<=1000000; i+=2)
if(b[i]==0)
{
k++;
p[k]=i;
}
for(;t;t--)
{
f>>n;
nd=1;
sd=1;
for(i=1;i<=k&&1LL*p[i]*p[i]<=n;i++)
if(n%p[i]==0)
{
e=1;pc=1;sc=1;
while(n%p[i]==0)
{
e++;
pc*=p[i];
sc+=pc;
n/=p[i];
}
nd*=e;
sd=(sd*sc)%9973;
}
if(n>1)
{
nd*=2;
sd=(sd*(n+1))%9973;
}
g<<nd<<' '<<sd<<'\n';
}
return 0;
}