[Nam Định - TS10 - 2024] Bài 4: Bộ ba tốt

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Cho một dãy số ~(a_n)~ gồm ~n~ số nguyên ~a_1, a_2, \dots, 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 \neq 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~.

Input

  • Dòng thứ nhất là số nguyên dương ~n~ (~3 \le n \le 10^3~).
  • Dòng thứ hai gồm ~n~ số nguyên ~a_1, a_2, \dots, a_n~ (~-10^9 \le a_i \le 10^9~), các số cách nhau bởi dấu cách.

Output

  • Đưa ra 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.

Sample Input 1

5
1 2 3 5 68

Sample Output 1

2

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.