Pagini recente » Cod sursa (job #2888027) | Cod sursa (job #164104) | Cod sursa (job #1936055) | Cod sursa (job #2838391) | Cod sursa (job #2060298)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fractii.in");
ofstream c("fractii.out");
int divizor(unsigned long long x,unsigned long long y)
{int r;
r=x%y;
while(r!=0)
{
x=y;
y=r;
r=x%y;
}
if(y==1)
return 0;
}
int main()
{ int s=0,p=0;
unsigned long long phi[100000],N,i,j;
f>>N;
for (i = 1; i <= N; ++i)
phi[i] = i-1;
for (i = 2; i <= N; ++i)
for (j = 2*i; j <= N; j += i)
phi[j] -= phi[i];
for(j=2;j<=N;j++)
p+=phi[j];
for(i=2;i<=N-1;i++)
{
for(j=i+1;j<=N;j++)
if(divizor(i,j)==0)
s++;
}
c<<p+N+s;
return 0;
}