Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include<vector>
- #include<algorithm>
- using namespace std;
- void move(vector<int> &v, int &j){
- while(j < (int) v.size() && v[j - 1] == v[j]){
- j++;
- }
- }
- int countZeroXORs(vector<int> &v){
- int count = 0;
- sort(v.begin(), v.end());
- for(int i = 0,j = 1; i < (int) v.size();){
- move(v, j);
- count += ((j - i) * (j - i -1)) / 2;
- i = j;
- j += 1;
- }
- return count;
- }
- int main()
- {
- int n;
- cin >> n;
- vector<int> v(n);
- for(int i = 0; i < n; i++){
- cin >> v[i];
- }
- cout << countZeroXORs(v) << '\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement