Hồi Ức Song Sinh

Xem dạng PDF

Gửi bài giải

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

Nguồn bài:
Châu Nhật Tăng
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Hãy tưởng tượng bạn đang lục soát một cuốn nhật ký cũ, nơi mỗi trang chứa một ký ức dưới dạng một con số. Trong cuốn nhật ký đó, bạn có một dãy số nguyên ~A~ gồm ~N~ trang, mỗi trang mang theo một con số ~A_i~ biểu thị một kỷ niệm. Có những kỷ niệm đặc biệt xuất hiện nhiều lần như những mảnh ghép song sinh của quá khứ. Nhiệm vụ của bạn là tìm ra và đếm tất cả các cặp trang trong nhật ký sao cho với mọi cặp chỉ số ~i~ và ~j~ thỏa mãn ~i < j~ thì giá trị trên trang ~i~ bằng với giá trị trên trang ~j~ (tức ~A_i = A_j~). Qua đó, bạn sẽ khám phá ra số lượng "hồi ức song sinh" ẩn chứa trong cuốn nhật ký ấy.

Input

  • Dòng thứ nhất chứa số nguyên ~N~ ~(N ≤ 10^5)~.
  • Dòng thứ hai chứa ~N~ số nguyên ~A_1, A_2, …, A_N~ ~(|A_i| ≤ 10^9)~.

Output

  • Một số nguyên duy nhất là tổng số cặp chỉ số ~i, j~ sao cho ~i < j~ và ~A_i = A_j~.

Sample Input

5
1 2 2 1 2

Sample Output

4

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.