func_code_string: #include <bits/stdc++.h>   using namespace std;   int n;   long long A, B;   struct node {     long long vx, vy, w;   } p[400005];   bool cmp(const node p1, const node p2) {     if (p1.w == p2.w) return p1.vx < p2.vx;     return p1.w < p2.w;   }   int main() {     scanf( %d%I64d%I64d , &n, &A, &B);     int i, j;     long long gg;     for (i = 1; i <= n; i++) scanf( %I64d%I64d%I64d , &gg, &p[i].vx, &p[i].vy);     long long ans = 0;     for (i = 1; i <= n; i++) {       p[i].w = p[i].vy - p[i].vx * A;     }     sort(p + 1, p + n + 1, cmp);     for (i = 1; i <= n; i++) {       j = i;       while (j + 1 <= n && p[j + 1].w == p[i].w) j = j + 1;       long long num = j - i + 1;       int k;       for (int t = i; t <= j; t++) {         k = t;         while (k + 1 <= j && p[k + 1].vx == p[t].vx) k = k + 1;         long long siz = k - t + 1;         ans += siz * (num - siz);         t = k;       }       i = j;     }     printf( %I64d , ans);     return 0;   }   