Cod sursa(job #2442151)

Utilizator Narcis09Grecu Narcis Narcis09 Data 22 iulie 2019 23:02:21
Problema Fractii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
	
#include <iostream>
#include <fstream>
using namespace std;
bool er[1000001];
int main(){
	ifstream fin("fractii.in");
	ofstream fout("fractii.out");
	unsigned n,i,j,k=0,a,b,r;
	fin>>n;
	er[0]=er[1]=1;
	for (i=2;i*i<=n;i++){
		if (er[i]==0)
			for (j=2;j<=n/i;j+=i)
				er[j*i]=0;
	}
	k=n;
	k=k+n/2+n%2;
	for (i=3;i<=n;i++){
		if (er[i]==0)
			k=k+n-1;
		if (i%2)
		for (j=1;j<=n;j++){
			if (i==1||j==1){
				k++;
				continue;
			}
			a=i;
			b=j;
			while (b){
				r=a%b;
				a=b;
				b=r;
			}
			if (a==1){
				k++;
			}
		}
		else	
			for (j=1;j<=n;j+=2){
			if (i==1||j==1){
				k++;
				continue;
			}
			a=i;
			b=j;
			while (b){
				r=a%b;
				a=b;
				b=r;
			}
			if (a==1){
				k++;
			}
		}
	}
	fout<<k;
	fin.close();
	fout.close();	
	return 0;
}