Pagini recente » Cod sursa (job #650280) | Cod sursa (job #2200671) | Cod sursa (job #1811813) | Cod sursa (job #261077) | Cod sursa (job #2444270)
#include <fstream>
using namespace std;
ifstream fin ("fractii.in");
ofstream fout ("fractii.out");
int v[1000001];
int main ()
{
int i, j, n;
int 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
}