Pagini recente » Cod sursa (job #300033) | Cod sursa (job #834508) | Cod sursa (job #569010) | Cod sursa (job #9258) | Cod sursa (job #2060483)
#include <iostream>
#include <bitset>
#include <stack>
#include <fstream>
using namespace std;
ifstream fin("perechi.in");
ofstream fout("perechi.out");
bitset <20000000>a;
int n,pr[100000],x,st[1000000],j,lastx,s=1,l;
int main()
{
cout<<sizeof(st)/1000;
fin>>n;
for(long long i=2;i*i<=n;i++)
{
if(!a[i])
{for(long long j=2*i;j<=n;j+=i)
a[j]=1;
l++;}
}
a[1]=1;
for(int i=1;i<=n;i++)
{
if(!a[i])
{x++;pr[x]=i;}
}
x=1;
j=0;
while(n>1)
{
while(n%pr[x]==0)
{
if(x!=lastx)
j++;
n/=pr[x];
st[j]++;
lastx=x;
}
x++;
}
for(int i=1;i<=j;i++)
{
s*=2*st[i]+1;
}
fout<<(s+1)/2;
return 0;
}