Cod sursa(job #3249634)

Utilizator MegaCoderMinoiu Teodor Mihai MegaCoder Data 17 octombrie 2024 13:35:17
Problema Pairs Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<fstream>
std::ifstream fin("pairs.in");
std::ofstream fout("pairs.out");
long long f[1000001], ans[1000001];
int n, v, max=-1;
int main()
{
    fin>>n;
    for(int i=0; i<n; ++i)
    {
        fin>>v;
        ++f[v];
        max=std::max(max, v);
    }

    for(int i=max; i>=1; --i)
    {
        for(int j=i; j<=max; j+=i)
            ans[i]+=f[j];

        ans[i]=ans[i]*(ans[i]-1)/2;

        for(int j=2*i; j<=max; j+=i)
            ans[i]-=ans[j];
    }
    fout<<ans[1];
    return 0;
}