Cod sursa(job #2138903)

Utilizator FunnyStockyMihnea Andreescu FunnyStocky Data 21 februarie 2018 22:50:27
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
ifstream cin("pairs.in");
ofstream cout("pairs.out");
const int nmax=1000000;
long long n,ans,key,nr;
bool ap[nmax+5],viz[nmax+5];
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>key;
        ap[key]=1;
    }
    for(int divizor=2;divizor<=nmax;divizor++)
        if(viz[divizor]==0)
        {
            nr=0;
            for(int j=divizor;j<=nmax;j+=divizor)
            {
                nr+=ap[j];
                if(viz[j]==1)
                    ap[j]=0;
                viz[j]=1;
            }
            ans+=1ll*nr*(nr-1)/2;
        }
    ans=1ll*n*(n-1)/2-ans;
    cout<<ans;
    return 0;
}
/**




**/