Pagini recente » Cod sursa (job #2661888) | Cod sursa (job #2711882) | Cod sursa (job #2980573) | Cod sursa (job #2972993) | Cod sursa (job #2253717)
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");
long long totneg=0;
bool v[1000000];
long long n;
long long cmmdc(long long a, long long b, long long aux){
long long c;
while(b){
c=a%b;
a=b;
b=c;
}
if(a=aux){
return a;
}
else{
long long ca=a;
while(a>1){
if(a%aux!=0){
return ca;
}
else{
a/=aux;
}
}
return aux;
}
}
void ciur(){
for(long long i=2; i<=n; i++){
if(!v[i]){
for(long long j=i+i; j<=n; j+=i){
v[j]=true;
long long corr=1;
for(long long k=j-i; k>=i+i; k-=i){
if(cmmdc(j, k, i)==i){
corr++;
}
}
totneg+=corr*2;
}
}
}
}
int main()
{
cin>>n;
long long tot=n*n;
ciur();
totneg+=n-1;
cout<<tot-totneg;
}