From db681f7c7915c13ab1d6eee020f539bdb2be2309 Mon Sep 17 00:00:00 2001 From: Siddharth6780 <63189333+Siddharth6780@users.noreply.github.com> Date: Thu, 1 Oct 2020 20:00:54 +0530 Subject: [PATCH] Create 1420B.cpp --- 1420B.cpp | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 1420B.cpp diff --git a/1420B.cpp b/1420B.cpp new file mode 100644 index 0000000..f0d488c --- /dev/null +++ b/1420B.cpp @@ -0,0 +1,46 @@ +#include +using namespace std; +#define ll long long +#define fio ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0) +#define endl '\n' +#define mod 1000000007 +ll min(ll a, ll b) { + if (a < b) + return a; + else + return b; +} +int SetOneBit(int i) { + i |= (i >> 1); + i |= (i >> 2); + i |= (i >> 4); + i |= (i >> 8); + i |= (i >> 16); + return i - ((unsigned)i >> 1); +} +bool compare(int a, int b) { + return a > b; +} +int main() { + fio; + ll t; + cin >> t; + while (t--) { + int n; + cin >> n; + int a[n]; + unordered_mapm; + ll ans = 0; + for (int i = 0; i < n; i++) { + cin >> a[i]; + ll set_bit = SetOneBit(a[i]); + + ans += m[set_bit]; + m[set_bit]++; + } + + cout << ans << endl; + + } + return 0; +}