Pagini recente » Cod sursa (job #3176535) | Cod sursa (job #1713609) | Cod sursa (job #2575571) | Cod sursa (job #1543931) | Cod sursa (job #3249634)
#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;
}