Pagini recente » Cod sursa (job #2227428) | Cod sursa (job #360035) | Cod sursa (job #2755566) | Cod sursa (job #2281179) | Cod sursa (job #2500158)
#include <fstream>
#define mod 9973
using namespace std;
bool ciur[1000005];
int p[150000];
int x, i, t, j, c, nr, v;
int suma, e;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
int main () {
fin>>t;
for (i=2;i<=1000000;i++) {
if (ciur[i]==0) {
p[++c]=i;
for (j=i+i;j<=1000000;j+=i)
ciur[j]=1;
}
}
///p contine toate numerele prime pana la 10^6
for (;t--;) {
nr=1;
e=0;
v=1;
suma=1;
fin>>x;
for (j=1;p[j]<=x/p[j] && x!=1; j++) {
if (x%p[j]==0) {
e=0;v=1;
while(x%p[j]==0) {
e++;
v*=p[j];
x/=p[j];
}
}
nr*=(e+1);
suma*=((v*p[j]-1)/(p[j]-1));
suma%=mod;
}
if (x!=1) {
nr*=2;
suma*=((x*x-1)/(x-1));
suma%=mod;
}
fout<<nr<<" "<<suma%mod<<"\n";
}
return 0;
}