Pagini recente » Cod sursa (job #1664851) | Cod sursa (job #2968740) | Cod sursa (job #171902) | Cod sursa (job #510866) | Cod sursa (job #1427786)
#include <fstream>
#include <vector>
using namespace std;
long long gcd(long long a, long long b) {
if (b == 0)
return (a == 1) ? 0 : a;
return gcd(b, a % b);
}
int main() {
ifstream fi("fractii.in");
ofstream fo("fractii.out");
long long n;
fi >> n;
vector<bool> sieve(n + 1);
for (long i = 2; i <= n; i++)
sieve[i] = false;
sieve[2] = true;
long long ans = n * n - (n - 1);
for (long i = 2; i <= n; i++)
if (sieve[i]) {
for (long j = i * i; j <= n; j += i)
sieve[j] = false;
long aux = n / i;
ans -= aux * (aux - 1);
}
fo << ans;
return 0;
}