Cod sursa(job #1434907)

Utilizator BFlorin93Balint Florin-Lorand BFlorin93 Data 11 mai 2015 17:17:51
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
// Fractii.cpp : Defines the entry point for the console application.
//
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <vector>
#include "fstream";

using namespace std;

#define NMAX 1000000

int euler[NMAX];
int ciur(int n)
{
	for (int i = 0; i <= n; i++)
		euler[i] = i;
	int suma = 0;

	for (int i = 2; i <= n; i+=1)
	{
		if (euler[i] == i)
		{					
			for (int prim = i; prim <= n;prim += i)
			{
				euler[prim] = euler[prim] * (i - 1) / i;
			}
		}
		suma += euler[i];
	}

	suma = 2 * suma + 1;
	return suma;
}

int main()
{
	ifstream input;
	ofstream output;

	int n;
	input.open("fractii.in");
	output.open("fractii.out");
	input >> n;
	output << ciur(n);

	input.close();
	output.close();
	return 0;
}