Cod sursa(job #122424)
Utilizator | Tabacu Raul Consstantin | Data | 12 ianuarie 2008 13:08:31 |
---|---|---|---|
Problema | Fractii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<fstream.h>
#include<math.h>
int b[922000],i,j,n,c,d,r,k,k1,k2,ok;
int main(){
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
k=2*n-1;k1=0;k2=1;
for(i=2;i<=n;i++)
{ok=1;
d=sqrt(i);
for(j=2;j<=d;j++)
if(i%j==0)
ok=0;
if(ok)
{k+=(((n/i)*(i-1)+n%i)-1)*2;
k1++;}
else
{b[k2]=i;k2++;}
}
for(i=1;i<k2;i++)
for(j=i+1;j<k2;j++)
{c=i;d=j;
while(d!=0)
{
r=c%d;
c=d;
d=r;
}
if(d==1)
k+=2;
}
g<<k-k1;
f.close();
g.close();
return 0;
}