Cod sursa(job #716069)
| Utilizator | Data | 18 martie 2012 11:10:57 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.38 kb |
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("fractii.in");
ofstream f2("fractii.out");
int main() {
int n, *fr;
long long s=1;
f>>n;
fr=new int[n+1];
for(int i=1;i<=n;i++) fr[i]=i;
for(int i=2;i<=n;i++) {
if(fr[i]==i) {
for(int j=i;j<=n;j+=i) {
fr[j]/=i, fr[j]*=(i-1);
}
}
}
for(int i=2;i<=n;i++)
s+=2*fr[i];
f2<<s<<endl;
return 0;
}
