Cod sursa(job #2577127)

Utilizator 1chiriacOctavian Neculau 1chiriac Data 8 martie 2020 14:26:39
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.43 kb
#include <bits/stdc++.h>
 
using namespace std;
int n,v[1000006];long long ans;
int main () {
	freopen("fractii.in","r",stdin);
	freopen("fractii.out","w",stdout);
	scanf("%d", &n);
	ans=1;
	for(int i=1;i<=n;++i)
		v[i]=i;
	for(int i=2;i<=n;++i)
		if(v[i]==i) {
			for(int j=2;j*i<=n;++j)
				v[i*j]=v[i*j]/i*(i-1);
		}
	for(int i=2;i<=n;++i)
		if(v[i]==i)
			ans=ans+(v[i]-1)*2;
		else
			ans=ans+2*v[i];
	printf("%lld", ans);
	return 0;
}