Asosiy qismga o‘tish

SH-02. Bitli juftliklar

Sizga N ta musbat butun sondan iborat a₁, a₂, …, aₙ massiv berilgan.

Agar i < j bo‘lib, quyidagi shart bajarilsa, (i, j) juftlik «yaxshi» deyiladi:

aᵢ AND aⱼ ≥ aᵢ XOR aⱼ

Bu yerda AND — bitli «va» amali (C++, Python va Java tillarida & belgisi), XOR — bitli «yoki inkor» amali (^ belgisi).

Massivdagi yaxshi juftliklar sonini toping.

Kirish ma’lumotlari

Birinchi qatorda bitta butun son N — massiv uzunligi.
Ikkinchi qatorda probel bilan ajratilgan N ta butun son: a₁, a₂, …, aₙ.

Chiqish ma’lumotlari

Bitta butun son — yaxshi juftliklar soni.

Cheklovlar

1 ≤ N ≤ 10^5
1 ≤ aᵢ ≤ 10^9

Misollar

Kirish
6
2 3 5 6 7 1
Chiqish
4
Kirish
4
1 2 4 8
Chiqish
0

Tushuntirish

1-misolda yaxshi juftliklar: (2, 3), (5, 6), (5, 7) va (6, 7).
Masalan, 5 AND 6 = 4, 5 XOR 6 = 3, va 4 ≥ 3.
2 va 5 juftligi esa yaxshi emas: 2 AND 5 = 0, 2 XOR 5 = 7.

2-misolda hech bir juftlik yaxshi emas, shuning uchun javob 0.

Diqqat: javob katta bo‘lishi mumkin — 32 bitli butun son turiga sig‘maydi.

Qoralama doskasi
Kod yozish
Kod yuborish 13 ta test
Yechim yuborish uchun tizimga kiring.