Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

P186SUMI - ROUND 6I - Đếm cặp (or Déjà vu?)

Cho một dãy số nguyên gồm n phần tử. Bạn hãy đếm xem có bao nhiêu cặp chỉ số (i, j) sao cho i < j và hai số nguyên a_i, a_j khác nhau chính xác k bit trong biểu diễn nhị phân.

Ví dụ: số 1 và số 4 khác nhau 2 bit trong biểu diễn nhị phân.

Input

Dòng đầu tiên gồm hai số nguyên n và k (2 ≤ n ≤ 4 * 10^5, 0 ≤ k ≤ 16).

Dòng thứ hai gồm n số nguyên a_1, a_2, ..., a_n (0 ≤ a_i ≤ 4 * 10^4).

Output

In trên một dòng số cặp (i, j) thỏa mãn.

Example

Input:
4 2
2 4 6 8
Output:
3

Được gửi lên bởi:adm
Ngày:2018-08-11
Thời gian chạy:0.5s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:ASM32-GCC ASM32 ASM64 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.