Cặp số bằng nhau

Xem dưới dạng PDF

Gửi bài giải


Điểm: 30
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Kiểu bài tập

Cho mảng A gồm N phần tử. Đếm số cặp \((i, j)\) sao cho i < jA[i] = A[j].

Sử dụng rời rạc hoá kết hợp mảng đếm tần số để đếm số cặp trùng nhau một cách hiệu quả.

Đầu vào
  • Dòng đầu tiên chứa số nguyên N (\(1 \le N \le 10^5\)).
  • Dòng thứ hai chứa N số nguyên \(A_i\) (\(-10^9 \le A_i \le 10^9\)).
Đầu ra

Một số nguyên duy nhất là số cặp thoả mãn.

Ví dụ
Input:
6
3 1 3 1 1 2

Output:
4
Giải thích

Các cặp: \((0, 2)\) với A[0]=A[2]=3; \((1, 3)\), \((1, 4)\), \((3, 4)\) với A[1]=A[3]=A[4]=1.

Ràng buộc & Subtasks

Subtask Điểm Ràng buộc
1 40% Giới hạn nhỏ
2 60% Không có ràng buộc gì thêm

Nhận xét

Không có ý kiến tại thời điểm này.