#include<bits/stdc++.h>
#define int long long
#define rep(i,n)for(long long i=0;i<n;i++)
using namespace std;
int a[200000];
int b[200000];
int gcd(int a, int b) {
if (!b)return a;
return gcd(b, a%b);
}
signed main() {
int n, k; scanf("%lld%lld", &n, &k);
int d = 1;
rep(i, n) {
scanf("%lld", &a[i]);
d = max(d, gcd(a[i], k));
}
int j = 0;
rep(i, n) {
if ((a[i] * 10000 * d) % k == 0)b[j++] = a[i];
}
int cnt = 0;
rep(i, j) {
for (long long t = i + 1; t < j; t++) {
if ((i*j) % k == 0)cnt++;
}
}
cout << cnt << endl;
}
./Main.cpp: In function ‘int main()’:
./Main.cpp:14:37: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
int n, k; scanf("%lld%lld", &n, &k);
^
./Main.cpp:17:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%lld", &a[i]);
^