Cod sursa(job #350253)
| Utilizator | Data | 23 septembrie 2009 08:59:37 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.42 kb |
#include <fstream>
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");
const int maxx=(1<<20);
int e[maxx];
int main(){
int i,j,n;
in>>n;
long long nr=0;
for(int i=1;i<maxx;i++){
e[i]=i;
}
for(i=2;i<maxx;i++){
if(e[i]==i){
for(j=i;j<maxx;j+=i){
e[j]=e[j]/i*(i-1);
}
}
}
for(i=2;i<=n;i++){
nr=nr+2*e[i];
}
out<<nr+1;
return 0;
}
