C++ NUMBER THEORY || SEIVE LIKE SOLUTION
\n    int sumOfFlooredPairs(vector<int>& A ) {\n        \n        int mod = 1e9;\n        mod += 7 ;\n\n        int mx = *max_element(A.begin(),A.end());\n     
```\n    int sumOfFlooredPairs(vector<int>& A ) {\n        \n        int mod = 1e9;\n        mod += 7 ;\n\n        int mx = *max_element(A.begin(),A.end());\n        mx = 2*mx+1 ;\n        \n        vector<int>t(mx,0);\n        \n        for( auto x : A )\n            t[x]++;\n        \n        vector<int>P(mx+1,0);\n        int res = 0 ;\n        \n        for( int i = 0 ; i < mx ; i++ )\n            P[i+1] = (P[i] + t[i])%mod ;\n        \n        \n\n        int temp = 0 ;\n        for( int i = 1 ; i < mx ; i++ )\n        {\n            if(t[i])\n            {\n                for( int j = 2*i ; j < mx ; j += i )\n                {\n                    int a = (j-i)/i;  \n                    int b = P[j]-P[j-i];\n                    int c = t[i];\n                    \n                    a %= mod ;\n                    b %= mod ;\n                    c %= mod ;\n                    \n                    res += (1LL*a*b*c)%mod ;\n                    res %= mod ;\n                }\n            }\n        }\n        \n        return res%mod; \n    }\n```
['C']