Pagini recente » Cod sursa (job #2171155) | Cod sursa (job #465688) | Cod sursa (job #920444) | Cod sursa (job #1727924) | Cod sursa (job #437911)
Cod sursa(job #437911)
#include<fstream>
#include<vector>
using namespace std;
void gen();
void read();
void doit();
void write();
int n;
vector<int> phi(1000005);
long long sum;
int main() {
read();
doit();
write();
return 0;
}
void read()
{
ifstream fin( "fractii.in" );
fin >> n;
fin.close();
}
void doit()
{
int i, j;
for ( i = 2; i <= n; ++i )
phi[i] = i;
for ( i = 2; i <= n; ++i )
if ( phi[i] == i )
{
for ( j = 2 * i; j <= n; j += i )
{
phi[j] /= i;
phi[j] *= (i - 1);
}
--phi[i];
}
for ( i = 2; i <= n; ++i )
sum += phi[i];
sum *= 2;
sum += 1;
}
void write()
{
ofstream fout( "fractii.out" );
fout << sum;
fout.close();
}