Cod sursa(job #2551599)
Utilizator | Susciuc Anastasia Anastasia11 | Data | 19 februarie 2020 23:13:05 |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include <iostream>
#include <fstream>
#define Nmax 1000005
#define zeros(x) ((x^(x-1))&x)
using namespace std;
/*
ifstream f("stramosi.in");
ofstream g("stramosi.out");*/
ifstream f("fractii.in");
ofstream g("fractii.out");
int dp[Nmax], n;
long long sum;
int main()
{
f >> n;
for (int i = 2; i <= n+1; i++)
dp[i]=i-1;
for (int i = 2; i <= n; i++)
{
sum+=dp[i];
for (int j = i+i; j <= n; j+=i)
dp[j]-=dp[i];
}
g << 2*sum+1;
return 0;
}