Source Code
#include <bits/stdc++.h>
using namespace std;
#define Yalahwy cin.tie(0), cout.tie(0), cin.sync_with_stdio(0), cout.sync_with_stdio(0);
#define ll long long
#define ld long double
#define EPS 1e-9
#define INF INT_MAX
#define pb push_back
#define pf push_front
#define F first
#define S second
#define all(x) x.begin(),x.end()
#define allr(x) x.rbegin(),x.rend()
#define rep(i, k, n) for(int i=k; i < n ; i++)
#define rev(i, n, k) for(int i = n; i>= k; i--)
#define yes cout << "YES" << endl;
#define no cout << "NO" << endl;
#define NIL -1

// alt + ctrl + l
// يا رب
const ll MOD = 1000000007;
const ll N = 1e5 + 1;
const ll C = 10;
//const ll K = 5;
const ll M = 10;
//const int OO=0x3f3f3f3f;
//const ll LOO=0x3f3f3f3f3f3f3f3f;
//int dx8[] = {+0, +0, -1, +1, +1, +1, -1, -1};
//int dy8[] = {-1, +1, +0, +0, +1, -1, +1, -1};
//int dx4[] = {+0, +0, -1, +1};
//int dy4[] = {-1, +1, +0, +0};
//struct cmp {
//    bool operator()(M const& p1, M const& p2)
//    {
//        return p1.dis > p2.dis;
//    }
//};

int main() {
    Yalahwy
    ll T = 1;
    vector<ll> div[N];
    ll x = 0;
    for (int i = 1; i <= 1e5; ++i) {
        for (int j = i; j <= 1e5; j+=i) {
            div[j].push_back(i);
        }
    }

    cin >> T;
    while (T--) {
        ll n;
        cin >> n;
        vector<ll> v(n);
        for (int i = 0; i < n; ++i) {
            cin >> v[i];
        }
        map<ll, ll> cnt;
        ll ans = 0;
        for (ll i = 0; i < n; ++i) {
            for (ll j = 1; j*j <= v[i]; ++j) {
                if(v[i] % j == 0){
                    if(cnt.count(j)){
                        ans += cnt[j]*(n - i);
                    }
                    if(v[i]/j != j&&cnt.count(v[i]/j)){
                        ans += cnt[v[i]/j]*(n - i);
                    }
                }
            }
            cnt[v[i]] = i + 1;
        }
        cout << ans << endl;
    }
}

Copy
Powerful Inversions Yalahwy
GNU G++17
242 ms
16.2 MB
Wrong Answer