Cho một dãy số \((a_{n})\) gồm \(n\) số nguyên \(a_{1},a_{2},\ldots,a_{n}\). Dãy số \((b_{n})\) được tạo ra từ \((a_{n})\) bằng cách đổi dấu tất cả các phần tử trong dãy số \((a_{n})\). Một bộ số \((a_{i},a_{j},b_{k})\) được gọi là bộ ba tốt nếu \(a_{i} + a_{j} + b_{k} = 0\), trong đó \(a_{i},a_{j}\ (i eq j)\) là các phần tử trong dãy số \((a_{n}),\) \(b_{k}\) là phần tử trong dãy số \((b_{n})\).
Yêu cầu: Tính số lượng các bộ ba tốt thỏa mãn chúng không trùng nhau.
Lưu ý: Bộ ba tốt \((a_{i1},a_{j1},b_{k1})\) và \((a_{i2},a_{j2},b_{k2})\) được gọi là trùng nhau khi và chỉ khi cặp số \({(a}_{i1},a_{j1})\) và \({(a}_{i2},a_{j2})\) là hoán vị của nhau và \(k_{1} = k_{2}\). Mỗi hoán vị của một dãy số là một cách sắp xếp các phần tử trong dãy số theo trật tự nào đó. Ví dụ, các hoán vị của dãy số \(\{ - 1,0\}\) là \(\{ - 1,0\}\), \(\{ 0, - 1\}\), hoán vị của dãy số \(\{ 2,\ 2\}\) là \(\{ 2,\ 2\}\).
Dữ liệu vào:
- Dòng thứ nhất là số nguyên dương \(n\ (3 \leq n \leq 10^{3})\).
- Dòng thứ hai gồm \(n\) số nguyên \(a_{1},a_{2},\ldots,a_{n}\) \(( - 10^{9} \leq a_{i} \leq 10^{9})\), các số cách nhau bởi dấu cách.
Kết quả ra:
Một dòng chứa số lượng bộ ba tốt thỏa mãn yêu cầu. Trong trường hợp không tồn tại bộ ba tốt thì đưa ra số 0.
Ví dụ:
Input | Output | Giải thích |
---|---|---|
5 1 2 3 5 68 | 2 | Dãy số (an) là: {1, 2, 3, 5, 68} Dãy số (bn) là: {-1, -2, -3, -5, -68} Có 4 bộ ba tốt là: (a1, a2, b3) = (1, 2, -3), (a2, a1, b3) = (2, 1, -3), (a2, a3, b4) = (2, 3, -5), (a3, a2, b4) = (3, 2, -5) Trong đó: (a1, a2, b3), (a2, a1, b3) trùng nhau, (a2, a3, b4), (a3, a2, b4) trùng nhau. Nên có tất cả 2 bộ ba tốt không trùng nhau. |
3 -1 0 -1 | 2 | Dãy số (an) là: {-1, 0, -1} Dãy số (bn) là: {1, 0, 1} Có 8 bộ ba tốt là: (a1, a2, b1), (a2, a1, b1), (a2, a3, b1), (a3, a2, b1), (a1, a2, b3), (a2, a1, b3), (a2, a3, b3), (a3, a2, b3), Trong đó: (a1, a2, b1), (a2, a1, b1), (a2, a3, b1), (a3, a2, b1) trùng nhau (a1, a2, b3), (a2, a1, b3), (a2, a3, b3), (a3, a2, b3) trùng nhau Nên có tất cả 2 bộ ba tốt không trùng nhau. |
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38904 |