Cod sursa(job #1409545)

Utilizator robx12lnLinca Robert robx12ln Data 30 martie 2015 16:20:50
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<fstream>
using namespace std;
ifstream fin("pairs.in");
ofstream fout("pairs.out");
int v[100005],p[100005];
int f[1000005],w[1000005];
long long nr,sol,k,n,i,j;
int main(){
    fin>>n;
    for(i=1;i<=n;i++){
        fin>>v[i];
        f[v[i]]=1;
    }
    k=0;
    for(i=2;i<=1000005;i++){
        if(w[i]==0){
            if(f[i]==1){
                nr++;
            }
            k++;
            for(j=i+i;j<=1000005;j+=i){
                if(f[j]==1 && f[i]==1){
                    p[k]++;
                }
                w[j]=1;
            }
        }
    }
    sol=((nr*nr*1LL-nr)/2);
    for(i=1;i<=nr;i++){
        sol+=(n-nr-p[i]);
    }
    fout<<sol<<"\n";
    return 0;
}