Pagini recente » Cod sursa (job #2095240) | Cod sursa (job #1013552) | Cod sursa (job #1228084) | Cod sursa (job #2057661) | Cod sursa (job #2458449)
#include <fstream>
#define input "fractii.in"
#define output "fractii.out"
#define NMAX 1000005
using namespace std;
typedef long long ll;
ifstream in(input);
ofstream out(output);
int ciur[NMAX], N;
void Euler_Totient()
{
for(int i = 1; i <= N; i++)
ciur[i] = i - 1;
for(int i = 2; i <= N; i++)
{
for(int j = i + i; j <= N; j += i)
ciur[j] = ciur[j] - ciur[i];
}
/*for(int i = 1; i <= N; i++)
out << ciur[i] << " ";
out << "\n";*/
}
int main()
{
in >> N;
Euler_Totient();
ll sol = 1;
for(int i = 2; i <= N; i++)
sol = sol + 2 * ciur[i];
out << sol;
return 0;
}