Cod sursa(job #1757765)
Utilizator | Data | 15 septembrie 2016 19:44:12 | |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
#include <vector>
#define NMAX 1000001
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");
int x,n;
long long sum;
int ciur[NMAX];
int main()
{
in >> n;
for(int i=1;i<=n;i++)
{
ciur[i] = i-1;
}
for(int i=2;i<=n;i++)
{
for(int j=2;i*j<=n;j++)
{
ciur[i*j]-= ciur[i];
}
}
for(int i=2;i<=n;i++)
{
// cout << ciur[i] << " ";
sum += ciur[i];
}
out << 2*sum+1;
return 0;
}