Cod sursa(job #2868142)
| Utilizator | Data | 10 martie 2022 19:14:37 | |
|---|---|---|---|
| Problema | Fractii | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <fstream>
using namespace std;
bool s[1000000];
bool prim(int x) {
if (x%2==0 && x>2) return false;
else
for (int d = 3; d*d <= x; d=d+2)
if (x%d==0)
return false;
return true;
}
int main() {
int n;
long long p;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
fin >> n;
p = n*(n-1)+1;
for (int i = 2; i <= n/2 ; ++i) {
if (prim(i)) {
int nr = n/i-1;
p -= 2*(nr+(nr*(nr-1)/2));
}
}
fout << p;
return 0;
}