#include <bits/stdc++.h>
using namespace std;
long long n, p, k, ans, a[1000005];
map<long long, long long> h;
long long fe(long long a, long long us) {
  if (us <= 1) return (us) ? a : 1ll;
  long long t = fe(a, us / 2);
  return (us & 1) ? (t * t % p) * a % p : t * t % p;
}
int main() {
  scanf("%lld %lld %lld", &n, &p, &k);
  for (int i = 1; i <= n; i++) scanf("%lld", a + i);
  for (int i = 1; i <= n; i++) {
    long long x = (fe(a[i], 4) - k * a[i] % p + p) % p;
    ans += h[x];
    h[x]++;
  }
  printf("%lld\n", ans);
  return 0;
}
