Pagini recente » Cod sursa (job #68996) | Cod sursa (job #942294) | Cod sursa (job #3249342) | Cod sursa (job #617717) | Cod sursa (job #3292462)
#include <fstream>
#include <vector>
#define int long long
#define eb emplace_back
using namespace std;
ifstream cin("frac.in");
ofstream cout("frac.out");
int n,p,N[120005],q,m;
bool E[120005];
vector<int> divizori,mob;
int cnt(int k)
{/// cate numere mai mici sau egale cu k au cmmdc 1 cu n
int ans=0;
return ans;
}
signed main()
{
n=120000;
for(int i=2;i<=n;i++)
E[i]=1;
for(int i=2;i<=n;i++)
if(E[i])
for(int j=i;j*i<=n;j++)
E[i*j]=0;
for(int i=2;i<=n;i++)
if(E[i])
N[++q]=i;
q--;
cin>>n>>p;
divizori.eb(1);
for(int d=1;d*d<=n;d++)
if(n%d==0)
{
if(d!=1)
divizori.eb(d);
if(d!=n/d)
divizori.eb(n/d);
}
m=divizori.size()-1;
mob.resize(m+5);
/*for(int i=1;i<=m;i++)
{
int x=divizori[i];
int d=1,sgn=0,ok=0;
while(x>1 && d<=q)
{
if(N[d]*N[d]>x)
{
break;
}
if(ok==1)
{
break;
}
if(x%N[d]==0)
{
int e=0;
while(x%N[d]==0) e++,x=x/N[d];
if(e>1)
{
ok=1;
}
sgn++;
}
}
if(ok==1)
{
continue;
}
if(x!=1)
sgn++;
sgn=sgn%2;
if(sgn==0) mob[i]=1;
else mob[i]=-1;
}*/
return m;
}