Pagini recente » Cod sursa (job #2235769) | Cod sursa (job #352889) | Cod sursa (job #1424153) | Cod sursa (job #3204233) | Cod sursa (job #1152984)
#include <fstream>
using namespace std;
#define NMax 1000005
ifstream f("fractii.in");
ofstream g("fractii.out");
int n;
int phi[NMax];
void Preproc()
{
int i,j;
for(i=1;i<=n;i++) phi[i]=i;
for(i=2;i<=n;i++) if(phi[i]==i) for(j=i;j<=n;j+=i) phi[j]/=i, phi[j]*=(i-1);
}
long long CalcFrac()
{
long long sum=1;
for(int i=2;i<=n;i++) sum+=(long long)phi[i]*2;
return sum;
}
int main()
{
f>>n;
Preproc();
g<<CalcFrac()<<"\n";
f.close();
g.close();
return 0;
}