Pagini recente » Cod sursa (job #1316298) | Cod sursa (job #397873) | Cod sursa (job #2809237) | Cod sursa (job #3289256) | Cod sursa (job #3219322)
#include <fstream>
using namespace std;
ifstream cin("pairs.in");
ofstream cout("pairs.out");
using pii = pair<int,int>;
const int nmax = 1e6 + 1;
int n , a , cnt[nmax];
long long siv[nmax];
signed main()
{
cin >> n;
int mx = 0;
for(int i = 1 ; i <= n ; ++i)
{
cin >> a;
cnt[a]++;
mx = max(mx,a);
}
for(int i = 1 ; i <= mx ; ++i)
{
for(int j = i ; j <= mx ; j += i)
{
siv[i] += cnt[j];
}
}
for(int i = mx ; i >= 1 ; i--)
{
siv[i] = (siv[i]-1)*siv[i]/2;
for(int j = i+i ; j <= mx ; j += i)
{
siv[i] -= siv[j];
}
}
cout << siv[1];
return 0;
}