Cod sursa(job #309352)
Utilizator | Data | 30 aprilie 2009 09:38:27 | |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<fstream>
#define N 1000000
using namespace std;
long v[N], i, n, s;
void generate()
{
for(i = 1; i <= n; i++)
v[i] = i;
for(i = 2; i <= n; i++)
if(v[i] == i)
for(int j = i; j <= n; j+=i)
v[j]=v[j]/i*(i-1);
}
int main() {
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
generate();
for(i = 1; i <= n; i++)
s+=v[i];
s=s*2-1;
g<<s;
return 0;
}