// taxi-driver // Taxi Driver // Author: Constantine Sokol // Complexity : O(N log N) // Expected Verdict: AC #include #include #include using namespace std; const int MAXN = 200200; int n; int a, b; int x[MAXN]; int y[MAXN]; long long process(int n, int x[]) { sort(x + 1, x + n + 1); long long result = 0; long long sum_prev = 0; for (int i = 1; i <= n; i++) { sum_prev += x[i]; result += (long long)x[i] * i - sum_prev; } return result; } void solve() { scanf("%d", &n); scanf("%d%d", &a, &b); for (int i = 1; i <= n; i++) { int xs, ys; scanf("%d%d", &xs, &ys); x[i] = a * xs + b * ys; y[i] = a * xs - b * ys; } long long answer_x = process(n, x); long long answer_y = process(n, y); printf("%lld\n", (answer_x + answer_y) / 2); } int main() { int t; scanf("%d", &t); for (int i = 0; i < t; i++) { solve(); } return 0; }