Pagini recente » Cod sursa (job #1358050) | Cod sursa (job #1318633) | Cod sursa (job #2052319) | Cod sursa (job #2745115) | Cod sursa (job #2444272)
#include <fstream>
using namespace std;
ifstream fin ("fractii.in");
ofstream fout ("fractii.out");
int v[1000001];
int main ()
{
int i, j, n;
long long nr = 0;
fin>>n;
for (i=2;i<=n;i++)
v[i] = i-1;//numar fractii subunitare, unde i e numitor
//CIURUL LUI ERASTOTENE
for (i=2;i<=n;i++)
{
nr += v[i];
for (j=2*i;j<=n;j+=i) // elimin k/k*(numar)
v[j] -= v[i];
}
fout<<2*nr+1; // dublez numarul de solutii deoarece mai sus am considerat doar fractii subunitare
}