Cod sursa(job #1542706)

Utilizator DjokValeriu Motroi Djok Data 5 decembrie 2015 16:34:48
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<bits/stdc++.h>
using namespace std;

int i,j,n,aux,c[1000005];
bool a[1000005];
long long rs;

int main()
{
  ifstream cin("pairs.in");
  ofstream cout("pairs.out");

  ios_base::sync_with_stdio(0); cin.tie(0);

  for(i=2;i<=1e6;++i)
  if(!c[i]) for(j=i;j<=1e6;j+=i) 
            if(i*i!=j) ++c[j];

  cin>>n; rs=(1LL*n*n-n)/2;
  for(i=1;i<=n;++i) cin>>aux,a[aux]=1;

  for(i=2;i<=1e6;++i)
  if(c[i])
  {
    for(aux=0,j=i;j<=1e6;j+=i) if(a[j]) ++aux;

    rs+=-1*(c[i]%2)*(1LL*aux*aux-aux)/2;
  }

  cout<<rs<<'\n';

 return 0;
}