HÀNG RÀO

class="math inline">(n) cọc sắt được đánh số thứ tự từ 1 đến (n). Trên mỗi cọc Bờm muốn ghi một số nguyên có giá trị trong đoạn (\lbrack 1,n\rbrack) để thuận tiện trong việc quản lý. Do số lượng cọc nhiều nên khi giao việc cho công nhân, người ta đã ghi các số bị lặp lại rất nhiều trên các cọc.

Bờm muốn biết rằng nếu nhổ đi cọc thứ \(k\) thì sẽ còn bao nhiêu cặp cọc có số trùng nhau. Một cặp cọc có số trùng nhau khi và chỉ khi tồn tại hai cọc có vị trí \(i\)\(j\) \((1 \leq i < j \leq n)\) được ghi số giống nhau.

Yêu cầu: Bạn hãy giúp Bờm giải quyết bài toan trên.

Dữ liệu vào:

+ Dòng đầu ghi số nguyên dương \(n\).

+ Dòng thừ hai ghi \(n\) số nguyên là các số được ghi trên \(n\) cọc, giữa các số được ghi cách nhau một dấu cách.

Kết quả:

+ Ghi trên \(n\) dòng, dòng thứ \(k\) \((k = 1\ldots n)\) là số lượng cặp cọc còn lại có số trùng nhau khi nhổ đi cọc thứ \(k\).

Ví dụ:

Input Output Input Output
5
5 2 5 2 2
3
2
3
2
2
8
1 4 1 8 8 1 1 4
5
7
5
7
7
5
5
7

Giới hạn

+ Có 20% tổng số test với (2 ≤ N ≤ 200)

+ Có 40% tổng số test với (2 ≤ N ≤ 103)

+ Có 40% tổng số test với (2 ≤ N ≤ 105)

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. npk1605 (5/10)
  2. hungeazy08 (4/26)
  3. tung (2/5)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

Lưu Hải Phong - 2020
[email protected]