Cod sursa(job #2446916)

Utilizator valentinchipuc123Valentin Chipuc valentinchipuc123 Data 11 august 2019 11:45:21
Problema Pairs Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <queue>
#include <string>
#include <algorithm>
using namespace std;
long long numar=0;
int v[1000005],n,a[100005],maxim=0;
bool carac[1000005],carac2[1000005];
ifstream f("pairs.in");
ofstream g("pairs.out");

int main()
{
f>>n;
for(int i=1;i<=n;i++)
 {
  f>>a[i];
  if(a[i]>maxim) maxim=a[i];
  carac2[a[i]]=1;
 }
for(int i=2;i<=maxim;i++)
  if(carac[i]==0)
      {
       for(int j=i;j<=maxim;j+=i)
        carac[j]=1;
       int r=0;
       for(int j=maxim-maxim%i;j>=2;j-=i)
       if(carac2[j]==1)
       {
        v[j]+=r;
        r++;
       }
      }
sort(a+1,a+n+1);
for(int i=1;i<=n;i++)
  {
   n--;
   numar+=(n-v[a[i]]);
  }
g<<numar;
}