Cod sursa(job #3271120)

Utilizator Ilinca_Radu_2022Radu Ilinca-Rucsandra Ilinca_Radu_2022 Data 25 ianuarie 2025 10:47:21
Problema Pairs Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
#define MAX 1000000
using namespace std;
ifstream fin("pairs.in");
ofstream fout("pairs.out");
long long n, i, x, j, d[MAX+5], sol[MAX+5], mx;
int main()
{
    fin>>n;
    for (i=1; i<=n; i++) {
        fin>>x;
        for (j=1; j*j<x; j++) {
            if (x%j==0) {
                d[j]++;
                d[x/j]++;
            }
        }
        if (j*j==x) d[j]++;
        mx=max(mx, x);
    }
    for (i=mx; i>=1; i--) {
        sol[i]=d[i]*(d[i]-1)/2;
        for (j=2*i; j<=mx; j+=i) {
            sol[i]-=sol[j];
        }
    }
    fout<<sol[1];
    return 0;
}