Pagini recente » Cod sursa (job #2477791) | Cod sursa (job #1976083) | Cod sursa (job #2858451) | Rating Picior Alexandru Florentin (Picior) | Cod sursa (job #1106307)
#include <fstream>
#include <cmath>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int t,i,k=0,d[1000000];
long long n;
bool viz[1000000];
void ciur(int N)
{
int i, j;
viz[1]=true;
for (i=2; i<=N; i++)
if (viz[i] == false)
{
k++;
d[k] = i;
for (j=2; j*i<=N; j++)
viz[i*j] = true;
}
}
int main()
{
int t, i, nr , s =0, e,j;
long long n;
ciur(1000000);
f>>t;
for(i=1;i<=t;i++)
{
f>>n; nr = 1; s = 0;
j=1;
while(n>1 && j<=k)
{
e=0;
while(n%d[j]==0)
{
e++;
n=n/d[j];
}
if (e>0)
{
nr=nr*(e+1);
s=(s+((int) (pow(d[j], e+1)-1) /(d[j]-1))) % 9973;
}
j++;
}
g<<nr<<" "<<s<<"\n";
}
}