Pagini recente » Cod sursa (job #124010) | Cod sursa (job #130657) | Cod sursa (job #170607) | Cod sursa (job #2096123) | Cod sursa (job #2231504)
#include <fstream>
std::ifstream f("ssnd.in");
std::ofstream g("ssnd.out");
using namespace std;
const int MAXN = 1000001;
bool a[MAXN];
long long nr=0, i, j, t;
int main()
{
for(i=2; i<MAXN; ++i)
{
a[i]=1;
}
for(i=2; i<MAXN; ++i)
{
if(a[i])
{
for(j=i;j<=MAXN/i; ++j)
{
a[i*j]=0;
}
}
}
long long x;
long long sum;
long long d, val;
f>>t;
for(i=0; i < t; ++i)
{
f>>x;
sum = 1;
nr = 1;
for(j=2; j<MAXN && x != 1; ++j)
{
if(a[j])
{
d = 0;
val = 1;
while( x % j == 0 )
{
x = x / j;
d++;
val *= j;
}
if(d > 0)
{
val *= j;
sum *= ((val - 1) / (j-1)) % 9973;
}
nr *= (d + 1);
}
}
if(x != 1)
{
sum = (sum + x) % 9973;
}
g<< nr << ' ' << sum << '\n';
}
f.close();
g.close();
return 0;
}