Ankit_132

D

Oct 22nd, 2023
401
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.93 KB | None | 0 0
  1.  
  2. #include <bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. #define ll     long long
  7. #define _test   int _TEST; cin>>_TEST; while(_TEST--)
  8.  
  9. int main()
  10. {
  11.     _test
  12.     {
  13.         int n;
  14.         cin>>n;
  15.  
  16.         vector<int> a(n+1);
  17.  
  18.         for(int i=1; i<=n; i++)
  19.         {
  20.             int x;
  21.             cin>>x;
  22.             a[x]++;
  23.         }
  24.  
  25.         ll int ans = n*1ll*(n-1)/2;
  26.         vector<ll int> f(n+1);
  27.  
  28.         for(int i=n; i>0; i--)
  29.         {
  30.             ll int m=0;
  31.             for(int j=i; j<=n; j+=i)
  32.             {
  33.                 m+=a[j];
  34.                 f[i]-=f[j];
  35.             }
  36.  
  37.             f[i] += m*1ll*(m-1)/2;
  38.         }
  39.  
  40.         for(int i=1; i<=n; i++)
  41.         {
  42.             if(a[i])
  43.             {
  44.                 for(int j=i; j<=n; j+=i)
  45.                 {
  46.                     ans-=f[j];
  47.                     f[j]=0;
  48.                 }
  49.             }
  50.         }
  51.  
  52.         cout<<ans<<"\n";
  53.     }
  54. }
  55.  
Advertisement
Add Comment
Please, Sign In to add comment